結果
| 問題 |
No.277 根掘り葉掘り
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-09-06 17:39:21 |
| 言語 | Python2 (2.7.18) |
| 結果 |
AC
|
| 実行時間 | 529 ms / 3,000 ms |
| コード長 | 542 bytes |
| コンパイル時間 | 465 ms |
| コンパイル使用メモリ | 6,912 KB |
| 実行使用メモリ | 33,948 KB |
| 最終ジャッジ日時 | 2024-07-19 04:32:53 |
| 合計ジャッジ時間 | 6,833 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 18 |
ソースコード
#!/usr/bin/python
from collections import deque
n = int(raw_input())
G = [[] for _ in xrange(n)]
for _ in xrange(n-1):
x, y = map(lambda p: int(p)-1, raw_input().split())
G[x].append(y)
G[y].append(x)
que = deque([0])
dist = [0] + [float('inf')] * (n - 1)
for v in xrange(1, n):
if len(G[v]) == 1:
dist[v] = 0
que.append(v)
while que:
v = que.popleft()
for vv in G[v]:
if dist[vv] > dist[v] + 1:
dist[vv] = dist[v] + 1
que.append(vv)
print '\n'.join(map(str, dist))