# UUID: 9433dce0-f1a4-4cc3-8c22-f8519b4c5499
from sys import stdin, setrecursionlimit
input = stdin.readline
setrecursionlimit(10**6)
N = int(input())
negy=[]
ot=[]
for i in range(1,N+1):
S, M = map(int,input().split())
if M==4:
negy.append((S,i))
elif M>4:
ot.append((S,i))
negy.sort()
ot.sort()
def test(k, pr=False):
i=j=0
for day in range(k):
while i < len(negy) and negy[i][0] < day:
i += 1
while j < len(ot) and ot[j][0] < day:
j += 1
if i < len(negy):
if j < len(ot):
if pr:
print(negy[i][1], ot[j][1])
i += 1
j += 1
else:
return False
else:
if j+1 < len(ot):
if pr:
print(ot[j][1], ot[j+1][1])
j+=2
else:
return False
return True
lo = 0
hi = 2000
while hi-lo > 1:
mid = (hi+lo)//2
if test(mid):
lo = mid
else:
hi = mid
print(lo)
test(lo,True)| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 39ms | 19688 KiB | ||||
| subtask2 | 0/10 | ||||||
| 2 | Wrong answer | 43ms | 19660 KiB | ||||
| 3 | Accepted | 43ms | 19604 KiB | ||||
| 4 | Wrong answer | 39ms | 19668 KiB | ||||
| 5 | Accepted | 39ms | 19652 KiB | ||||
| 6 | Accepted | 39ms | 19676 KiB | ||||
| 7 | Accepted | 45ms | 19616 KiB | ||||
| 8 | Accepted | 43ms | 19720 KiB | ||||
| 9 | Accepted | 39ms | 19680 KiB | ||||
| 10 | Accepted | 39ms | 19884 KiB | ||||
| 11 | Accepted | 39ms | 19680 KiB | ||||
| subtask3 | 0/20 | ||||||
| 12 | Accepted | 39ms | 19608 KiB | ||||
| 13 | Accepted | 46ms | 19748 KiB | ||||
| 14 | Accepted | 39ms | 19632 KiB | ||||
| 15 | Accepted | 43ms | 19548 KiB | ||||
| 16 | Accepted | 45ms | 19708 KiB | ||||
| 17 | Wrong answer | 52ms | 21668 KiB | ||||
| 18 | Accepted | 50ms | 21396 KiB | ||||
| 19 | Wrong answer | 48ms | 21216 KiB | ||||
| 20 | Wrong answer | 50ms | 21468 KiB | ||||
| 21 | Wrong answer | 61ms | 21724 KiB | ||||
| 22 | Wrong answer | 48ms | 21140 KiB | ||||
| 23 | Accepted | 64ms | 21716 KiB | ||||
| 24 | Accepted | 71ms | 21632 KiB | ||||
| 25 | Wrong answer | 61ms | 21772 KiB | ||||
| 26 | Wrong answer | 48ms | 21480 KiB | ||||
| 27 | Wrong answer | 78ms | 22416 KiB | ||||
| 28 | Wrong answer | 72ms | 22264 KiB | ||||
| 29 | Accepted | 48ms | 21496 KiB | ||||
| 30 | Wrong answer | 67ms | 21728 KiB | ||||
| 31 | Wrong answer | 76ms | 22236 KiB | ||||
| subtask4 | 15/15 | ||||||
| 32 | Accepted | 39ms | 19612 KiB | ||||
| 33 | Accepted | 39ms | 19664 KiB | ||||
| 34 | Accepted | 43ms | 19604 KiB | ||||
| 35 | Accepted | 48ms | 21060 KiB | ||||
| 36 | Accepted | 54ms | 21464 KiB | ||||
| 37 | Accepted | 59ms | 21468 KiB | ||||
| 38 | Accepted | 43ms | 21216 KiB | ||||
| 39 | Accepted | 39ms | 19948 KiB | ||||
| 40 | Accepted | 46ms | 21084 KiB | ||||
| 41 | Accepted | 57ms | 21724 KiB | ||||
| 42 | Accepted | 52ms | 21468 KiB | ||||
| 43 | Accepted | 72ms | 21716 KiB | ||||
| 44 | Accepted | 46ms | 19960 KiB | ||||
| 45 | Accepted | 52ms | 21348 KiB | ||||
| 46 | Accepted | 70ms | 22052 KiB | ||||
| subtask5 | 0/15 | ||||||
| 47 | Wrong answer | 50ms | 21128 KiB | ||||
| 48 | Wrong answer | 50ms | 21452 KiB | ||||
| 49 | Wrong answer | 57ms | 21360 KiB | ||||
| 50 | Wrong answer | 43ms | 21080 KiB | ||||
| 51 | Accepted | 57ms | 21464 KiB | ||||
| 52 | Wrong answer | 43ms | 21136 KiB | ||||
| 53 | Wrong answer | 43ms | 21216 KiB | ||||
| 54 | Accepted | 48ms | 21420 KiB | ||||
| 55 | Accepted | 39ms | 19692 KiB | ||||
| 56 | Accepted | 50ms | 21536 KiB | ||||
| 57 | Wrong answer | 50ms | 21268 KiB | ||||
| 58 | Wrong answer | 43ms | 21128 KiB | ||||
| 59 | Accepted | 52ms | 21456 KiB | ||||
| 60 | Wrong answer | 41ms | 21136 KiB | ||||
| 61 | Accepted | 45ms | 19904 KiB | ||||
| subtask6 | 0/15 | ||||||
| 62 | Wrong answer | 50ms | 21164 KiB | ||||
| 63 | Wrong answer | 57ms | 21480 KiB | ||||
| 64 | Wrong answer | 63ms | 21696 KiB | ||||
| 65 | Accepted | 68ms | 21988 KiB | ||||
| 66 | Accepted | 85ms | 21928 KiB | ||||
| 67 | Wrong answer | 43ms | 21188 KiB | ||||
| 68 | Wrong answer | 61ms | 21528 KiB | ||||
| 69 | Accepted | 50ms | 21468 KiB | ||||
| 70 | Wrong answer | 52ms | 21468 KiB | ||||
| 71 | Wrong answer | 78ms | 22060 KiB | ||||
| 72 | Accepted | 57ms | 21464 KiB | ||||
| 73 | Wrong answer | 65ms | 21640 KiB | ||||
| 74 | Wrong answer | 63ms | 21928 KiB | ||||
| 75 | Wrong answer | 52ms | 21468 KiB | ||||
| 76 | Wrong answer | 50ms | 21220 KiB | ||||