이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
n, a, b = map(int, input().split())
k = a * b
seg = []
for i in range(n):
l, r = map(int, input().split())
if r - l + 1 >= k:
seg.append([0, k - 1])
continue
l1 = l % k
r1 = r % k
if r1 < l1:
seg.append([0, r1])
seg.append([l1, k - 1])
else:
seg.append([l1, r1])
seg.sort()
mxr, res = -1, 0
for x in seg:
res += max(0, x[1] - max(mxr, x[0] - 1))
mxr = x[1]
print res
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |