| Task: | Järjestys |
| Sender: | Metabolix |
| Submission time: | 2025-12-04 13:23:18 +0200 |
| Language: | Python3 (PyPy3) |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | WRONG ANSWER | 0 |
| #2 | WRONG ANSWER | 0 |
| #3 | WRONG ANSWER | 0 |
| #4 | WRONG ANSWER | 0 |
| #5 | WRONG ANSWER | 0 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.05 s | 1, 4, 5 | details |
| #2 | WRONG ANSWER | 0.06 s | 1, 4, 5 | details |
| #3 | WRONG ANSWER | 0.06 s | 1, 4, 5 | details |
| #4 | WRONG ANSWER | 0.07 s | 1, 4, 5 | details |
| #5 | WRONG ANSWER | 0.07 s | 1, 4, 5 | details |
| #6 | WRONG ANSWER | 0.07 s | 1, 2, 4, 5 | details |
| #7 | WRONG ANSWER | 0.08 s | 1, 3, 4, 5 | details |
| #8 | WRONG ANSWER | 0.07 s | 1, 4, 5 | details |
| #9 | WRONG ANSWER | 0.16 s | 2, 4, 5 | details |
| #10 | WRONG ANSWER | 0.18 s | 3, 4, 5 | details |
| #11 | WRONG ANSWER | 0.16 s | 4, 5 | details |
| #12 | WRONG ANSWER | 0.17 s | 4, 5 | details |
| #13 | WRONG ANSWER | 0.17 s | 4, 5 | details |
| #14 | WRONG ANSWER | 0.16 s | 4, 5 | details |
| #15 | WRONG ANSWER | 0.29 s | 2, 5 | details |
| #16 | WRONG ANSWER | 0.38 s | 3, 5 | details |
| #17 | WRONG ANSWER | 0.29 s | 5 | details |
| #18 | WRONG ANSWER | 0.32 s | 5 | details |
| #19 | WRONG ANSWER | 0.31 s | 5 | details |
| #20 | WRONG ANSWER | 0.33 s | 5 | details |
| #21 | WRONG ANSWER | 0.34 s | 5 | details |
| #22 | WRONG ANSWER | 0.38 s | 5 | details |
Code
#!/usr/bin/env python3
def kelpaa(p):
a = 0
for x in p:
if x[0] < a:
return False
a = x[1]
return True
def osa1(p):
# len(p) <= 5
def rekursio(p, a):
for i in range(len(p)):
if p[i][0] >= a:
p2 = p[:i] + p[i+1:]
r = rekursio(p2, p[i][1]) if p2 else []
if r is not None:
return [p[i]] + r
return rekursio(p, 0) if len(p) <= 5 else None
def osa23(p):
# x <= y aina tai x >= y aina, jolloin nouseva järjestys on oikea ratkaisu.
p = sorted(p)
if kelpaa(p):
return p
def osa4(p):
erikoismerkki = (1999999999, 0)
alut = sorted(p + [erikoismerkki])
loput = sorted(alut, key = lambda x: x[1])
n = len(alut)
kaaret = dict()
for i in range(n):
if loput[i][1] > alut[i][0]:
return None
kaaret[alut[i]] = loput[i]
syklit = dict()
nähty = set()
for i in range(n):
if alut[i] in nähty:
continue
nykyinen = alut[i]
sykli = set()
while nykyinen not in sykli:
sykli.add(nykyinen)
nähty.add(nykyinen)
nykyinen = kaaret[nykyinen]
syklit[alut[i]] = sykli
def yhdista(s1_key, s1):
for s2 in syklit.values():
if s1 is s2:
continue
for c in s2:
for a in s1:
b = kaaret[a]
d = kaaret[c]
if c[1] <= b[0] and a[1] <= d[0]:
kaaret[a] = d
kaaret[c] = b
s2.update(s1)
del syklit[s1_key]
return
for s1_key in list(syklit.keys()):
if s1_key not in syklit:
continue
s1 = syklit[s1_key]
if len(s1) == n:
ratkaisu = []
a = erikoismerkki
while kaaret[a] != erikoismerkki:
a = kaaret[a]
ratkaisu.append(a)
return ratkaisu
yhdista(s1_key, s1)
t = int(input())
for _ in range(t):
n = int(input())
parit = []
for i in range(n):
a, b = map(int, input().split())
parit.append((a, b, i))
tulos = osa4(parit) #osa23(parit) or osa1(parit)
if tulos is None:
print("NO")
else:
print("YES")
for p in tulos:
print(p[0], p[1])
Test details
Test 1
Group: 1, 4, 5
Verdict: ACCEPTED
| input |
|---|
| 100 1 74 75 1 100 43 ... |
| correct output |
|---|
| YES 74 75 YES 100 43 YES ... |
| user output |
|---|
| YES 74 75 YES 100 43 YES ... Truncated |
Test 2
Group: 1, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 2 80 54 51 61 2 ... |
| correct output |
|---|
| YES 51 61 80 54 YES 2 64 ... |
| user output |
|---|
| YES 51 61 80 54 YES 2 64 ... Truncated |
Test 3
Group: 1, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 3 3 74 91 45 100 24 ... |
| correct output |
|---|
| YES 3 74 100 24 91 45 YES ... |
| user output |
|---|
| YES 3 74 100 24 91 45 YES ... Truncated |
Test 4
Group: 1, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 4 88 50 62 41 12 86 ... |
| correct output |
|---|
| YES 12 86 88 50 62 41 66 93 ... |
| user output |
|---|
| YES 62 41 66 93 88 50 12 86 ... Truncated |
Test 5
Group: 1, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 5 82 80 80 92 5 22 ... |
| correct output |
|---|
| YES 5 22 94 13 82 80 80 92 ... |
| user output |
|---|
| YES 80 92 94 13 93 91 82 80 ... Truncated |
Test 6
Group: 1, 2, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 5 34 38 26 30 1 6 ... |
| correct output |
|---|
| YES 1 6 12 22 26 30 34 38 ... |
| user output |
|---|
| YES 46 56 34 38 26 30 12 22 ... Truncated |
Test 7
Group: 1, 3, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 5 50 40 28 25 51 7 ... |
| correct output |
|---|
| YES 51 7 50 40 47 1 17 11 ... |
| user output |
|---|
| YES 50 40 17 11 47 1 51 7 ... Truncated |
Test 8
Group: 1, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 5 2 2 2 1 1 1 ... |
| correct output |
|---|
| YES 1 2 2 1 2 1 1 1 ... |
| user output |
|---|
| YES 2 2 1 2 1 1 2 1 ... Truncated |
Test 9
Group: 2, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 175870020 296379324 248160539 883842002 21934885 781732852 ... |
| correct output |
|---|
| NO YES 4976156 6890135 10553287 11923223 14617057 17728163 ... |
| user output |
|---|
| NO YES 505046865 508844408 499601876 502814753 497365078 497433292 ... Truncated |
Test 10
Group: 3, 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 447597377 314433951 700232436 691277009 937268439 708165426 ... |
| correct output |
|---|
| YES 998963839 391778929 995772196 257222033 995754704 553123757 994629465 247775824 ... |
| user output |
|---|
| YES 973359293 912566443 991848108 707786383 961525122 745491826 960415167 662271936 ... Truncated |
Test 11
Group: 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 1 1 1 2 2 1 ... |
| correct output |
|---|
| YES 1 2 2 1 1 2 2 2 ... |
| user output |
|---|
| YES 2 2 2 2 2 2 2 2 ... Truncated |
Test 12
Group: 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 7 1 6 3 10 9 ... |
| correct output |
|---|
| YES 6 7 7 8 9 10 10 10 ... |
| user output |
|---|
| YES 2 1 5 1 6 2 10 2 ... Truncated |
Test 13
Group: 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 51 5 85 77 91 84 ... |
| correct output |
|---|
| YES 100 24 100 25 100 3 100 6 ... |
| user output |
|---|
| YES 97 100 90 81 91 63 62 66 ... Truncated |
Test 14
Group: 4, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 823828194 863717310 593641073 340054211 420481158 965069109 ... |
| correct output |
|---|
| YES 999289319 634855378 996775156 433726648 983657502 55234695 981890636 112877413 ... |
| user output |
|---|
| YES 837655861 991264522 96663815 577521349 941550256 1669679 657249032 737709307 ... Truncated |
Test 15
Group: 2, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 88724450 89315226 266915464 267648621 189301651 189661541 ... |
| correct output |
|---|
| YES 764920 1459946 1936195 2832987 3691481 4085931 4991808 5840928 ... |
| user output |
|---|
| YES 491061697 491263281 490117086 490832304 488906224 489883540 487580341 488142707 ... Truncated |
Test 16
Group: 3, 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 763682761 317584504 756010800 260162861 435911339 78070399 ... |
| correct output |
|---|
| YES 998768285 3307355 998714926 628486754 997115613 820932481 993320616 554600893 ... |
| user output |
|---|
| YES 989294518 948517754 843427138 836502074 880586004 467895562 748613638 524903612 ... Truncated |
Test 17
Group: 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 2 2 2 1 1 2 ... |
| correct output |
|---|
| YES 1 2 2 2 2 1 1 2 ... |
| user output |
|---|
| YES 2 2 2 2 2 2 2 2 ... Truncated |
Test 18
Group: 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 10 6 10 10 9 10 ... |
| correct output |
|---|
| YES 2 3 3 4 4 5 5 6 ... |
| user output |
|---|
| YES 10 10 10 10 10 10 10 10 ... Truncated |
Test 19
Group: 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 85 87 89 70 70 92 ... |
| correct output |
|---|
| YES 96 97 100 67 100 10 100 97 ... |
| user output |
|---|
| YES 89 100 91 68 99 70 42 94 ... Truncated |
Test 20
Group: 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 861154169 119512584 569086662 606567153 288230434 322196278 ... |
| correct output |
|---|
| YES 999945324 969534372 999738857 240617694 999244114 722161553 999207839 557351400 ... |
| user output |
|---|
| YES 341754469 998324921 948511501 62091692 830020585 795555733 957244595 514163029 ... Truncated |
Test 21
Group: 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 116439250 401518028 280329609 193466222 674040956 209050570 ... |
| correct output |
|---|
| NO YES 773701149 773852119 987509190 315670966 977413249 510418200 ... |
| user output |
|---|
| NO YES 906206511 991456785 780418396 696336788 675110477 507660001 ... Truncated |
Test 22
Group: 5
Verdict: WRONG ANSWER
| input |
|---|
| 100 500 934181189 942499518 684836806 395802802 957884803 570946201 ... |
| correct output |
|---|
| YES 999772640 505132174 999111650 140844643 999028633 888134186 999020109 291046771 ... |
| user output |
|---|
| YES 787523963 7089446 621119875 466247367 475561319 243054802 831444205 123404056 ... Truncated |
