結果
| 問題 |
No.1098 LCAs
|
| コンテスト | |
| ユーザー |
convexineq
|
| 提出日時 | 2020-06-26 21:43:53 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 1,130 ms / 2,000 ms |
| コード長 | 659 bytes |
| コンパイル時間 | 160 ms |
| コンパイル使用メモリ | 12,928 KB |
| 実行使用メモリ | 75,000 KB |
| 最終ジャッジ日時 | 2024-07-04 20:27:06 |
| 合計ジャッジ時間 | 15,512 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 28 |
ソースコード
# coding: utf-8
# Your code here!
import sys
read = sys.stdin.read
readline = sys.stdin.readline
n,*vw = map(int,read().split())
m = iter(vw)
g = [[] for _ in range(n)]
for v,w in zip(m,m):
g[v-1].append(w-1)
g[w-1].append(v-1)
order = []
parent = [-1]*n
st = [0]
while st:
v = st.pop()
order.append(v)
for c in g[v]:
if c != parent[v]:
parent[c] = v
st.append(c)
res = [1]*n
for i in order[:0:-1]:
res[parent[i]] += res[i]
for i in range(n):
res[i] *= res[i]
for i in order[1:]:
res[parent[i]] -= res[i]
print(*res,sep="\n")
convexineq