結果
問題 | No.2726 Rooted Tree Nim |
ユーザー | PNJ |
提出日時 | 2024-04-12 22:47:53 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 535 ms / 2,000 ms |
コード長 | 683 bytes |
コンパイル時間 | 193 ms |
コンパイル使用メモリ | 82,064 KB |
実行使用メモリ | 153,980 KB |
最終ジャッジ日時 | 2024-10-02 23:37:35 |
合計ジャッジ時間 | 6,985 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 13 |
ソースコード
T = int(input()) for _ in range(T): N,K = map(int,input().split()) G = [[] for i in range(N)] for i in range(N-1): u,v = map(int,input().split()) u -= 1 v -= 1 G[u].append(v) G[v].append(u) A = list(map(int,input().split())) parent = [-1 for i in range(N)] todo = [0] dist = [-1 for i in range(N)] dist[0] = 0 visit = [] while len(todo): s = todo.pop() visit.append(s) for t in G[s]: if dist[t] == -1: parent[t] = s dist[t] = dist[s] + 1 todo.append(t) g = 0 for s in range(N): if dist[s] % 2 == 0: A[s] = 0 A[s] %= (K + 1) g ^= A[s] if g: print('K') else: print('P')