Submission #1159901

#TimeUsernameProblemLanguageResultExecution timeMemory
1159901eliiasgDrivers (BOI24_drivers)Pypy 3
100 / 100
1261 ms130580 KiB
from heapq import * N, M, U = map(int, input().split()) roads = sorted(tuple(reversed(list(map(int, input().split())))) for _ in range(M))[::-1] Q = sorted(tuple(reversed(list(map(int, input().split())))) + (i,) for i in range(U)) parents = [-1]*(N+1) out = [None]*U def find(a): vis = [a] while parents[a] != -1: a = parents[a] vis.append(a) for e in vis[:-1]: parents[e] = a return a for t, aq, bq, i in Q: while len(roads) > 0 and t >= roads[-1][0]: _, a, b = roads.pop() a = find(a) b = find(b) if a != b: parents[a] = b aq = find(aq) bq = find(bq) out[i] = "TAIP" if aq == bq else "NE" print("\n".join(out))

Compilation message (stdout)

Compiling 'Main.py'...

=======
  adding: __main__.pyc (deflated 38%)

=======
#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...