Submission #217049

#TimeUsernameProblemLanguageResultExecution timeMemory
217049sevlllStrange Device (APIO19_strange_device)Pypy 2
0 / 100
30 ms4960 KiB
from math import gcd n, a, b = map(int, input().split()) pr = [] for i in range(n): x, y = map(int, input().split()) pr.append((x, y)) g = gcd(a, b+1) num = a * b // g ev = [] ans = 0 for p in pr: l = p[0] r = p[1] if r - l + 1 >= num: ans = num l %= num r %= num if r < l: ev += [(l, 1), (num, -1), (0, 1), (r+1, -1)] else: ev += [(l, 1), (r + 1, -1)] ev.sort() bal = 0 last = 0 for p in ev: x = p[0] tp = p[1] if bal: ans += x - last last = x bal += tp print min(num, ans)
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...