Submission #41809469


Source Code Expand

import Foundation

struct Edge: Hashable {
  let u: Int
  let v: Int
  
  init(_ u: Int, _ v: Int) {
    self.u = min(u, v)
    self.v = max(u, v)
  }
}

func main() {
  var scanner = Scanner()
  let N = scanner.read(Int.self)
  let D = scanner.read(Int.self)
  var G = Set<Edge>()
  for i in 0 ..< N {
    for d in -D ... D {
      var j = (i + d) % N
      if j < 0 {
        j += N
      }
      if i != j {
        G.insert(Edge(i, j))
      }
    }
  }
  if G.count < N * D {
    print("No")
  } else {
    print("Yes")
    for e in G {
      print(e.u + 1, e.v + 1)
    }
  }
}

main()

struct Scanner {
  private var tokens = [String]()
  private var index = 0
  
  mutating func read<T>(_ type: T.Type) -> T where T: LosslessStringConvertible {
    T(read())!
  }
  
  mutating func read<T>(_ type: T.Type, count n: Int) -> [T] where T: LosslessStringConvertible {
    (0 ..< n).map { _ in read(type) }
  }
  
  private mutating func read() -> String {
    while tokens.count == index {
      tokens = readLine()!.split(separator: " ").map(\.description)
      index = 0
    }
    defer {
      index += 1
    }
    return tokens[index]
  }
}

Submission Info

Submission Time
Task D - Everywhere is Sparser than Whole (Construction)
User semisagi
Language Swift (5.2.1)
Score 500
Code Size 1214 Byte
Status AC
Exec Time 71 ms
Memory 16044 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 2
AC × 36
Set Name Test Cases
Sample 00-sample-001.txt, 00-sample-002.txt
All 00-sample-001.txt, 00-sample-002.txt, 01-001.txt, 01-002.txt, 01-003.txt, 01-004.txt, 01-005.txt, 01-006.txt, 01-007.txt, 01-008.txt, 01-009.txt, 01-010.txt, 01-011.txt, 01-012.txt, 01-013.txt, 01-014.txt, 01-015.txt, 01-016.txt, 01-017.txt, 01-018.txt, 01-019.txt, 01-020.txt, 01-021.txt, 01-022.txt, 01-023.txt, 01-024.txt, 01-025.txt, 01-026.txt, 01-027.txt, 01-028.txt, 01-029.txt, 01-030.txt, 01-031.txt, 01-032.txt, 01-033.txt, 01-034.txt
Case Name Status Exec Time Memory
00-sample-001.txt AC 64 ms 13136 KiB
00-sample-002.txt AC 9 ms 13068 KiB
01-001.txt AC 9 ms 12856 KiB
01-002.txt AC 13 ms 13272 KiB
01-003.txt AC 9 ms 13272 KiB
01-004.txt AC 12 ms 12972 KiB
01-005.txt AC 9 ms 13276 KiB
01-006.txt AC 8 ms 13392 KiB
01-007.txt AC 11 ms 13380 KiB
01-008.txt AC 9 ms 13180 KiB
01-009.txt AC 8 ms 12820 KiB
01-010.txt AC 8 ms 12932 KiB
01-011.txt AC 9 ms 13012 KiB
01-012.txt AC 17 ms 13272 KiB
01-013.txt AC 10 ms 13032 KiB
01-014.txt AC 15 ms 13392 KiB
01-015.txt AC 14 ms 13468 KiB
01-016.txt AC 18 ms 13136 KiB
01-017.txt AC 17 ms 13272 KiB
01-018.txt AC 10 ms 13044 KiB
01-019.txt AC 71 ms 15784 KiB
01-020.txt AC 66 ms 15548 KiB
01-021.txt AC 65 ms 15548 KiB
01-022.txt AC 65 ms 15920 KiB
01-023.txt AC 64 ms 15556 KiB
01-024.txt AC 66 ms 15676 KiB
01-025.txt AC 64 ms 15620 KiB
01-026.txt AC 65 ms 15776 KiB
01-027.txt AC 21 ms 14104 KiB
01-028.txt AC 65 ms 15628 KiB
01-029.txt AC 28 ms 15624 KiB
01-030.txt AC 62 ms 16044 KiB
01-031.txt AC 21 ms 15628 KiB
01-032.txt AC 65 ms 15472 KiB
01-033.txt AC 25 ms 13992 KiB
01-034.txt AC 59 ms 14104 KiB