結果
| 問題 |
No.2325 Skill Tree
|
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2023-06-02 03:44:16 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
TLE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 689 bytes |
| コンパイル時間 | 984 ms |
| コンパイル使用メモリ | 12,544 KB |
| 実行使用メモリ | 183,552 KB |
| 最終ジャッジ日時 | 2024-12-28 15:28:32 |
| 合計ジャッジ時間 | 92,376 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 23 TLE * 13 |
ソースコード
from heapq import heappop,heappush
from bisect import bisect
N=int(input())
T=[list(map(int,input().split())) for i in range(N-1)]
E=[[] for i in range(N)]
for i in range(N-1):
l,a=T[i]
a-=1
E[a].append((i+1,l))
LEVEL=[1<<60]*N
LEVEL[0]=0
Q=[(0,0)]
while Q:
x,level=heappop(Q)
for to,lev in E[x]:
if LEVEL[to]>max(level,lev):
LEVEL[to]=max(level,lev)
heappush(Q,(to,LEVEL[to]))
SL=sorted(LEVEL)
for i in range(N):
if LEVEL[i]==1<<60:
LEVEL[i]=-1
Q=int(input())
for tests in range(Q):
com,x=map(int,input().split())
if com==1:
print(bisect(SL,x))
else:
print(LEVEL[x-1])
titia