結果

問題 No.2949 Product on Tree
ユーザー ntudantuda
提出日時 2024-10-26 14:06:28
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 621 bytes
コンパイル時間 465 ms
コンパイル使用メモリ 82,784 KB
実行使用メモリ 467,056 KB
最終ジャッジ日時 2024-10-26 14:07:19
合計ジャッジ時間 48,537 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 37 ms
52,724 KB
testcase_01 AC 37 ms
53,596 KB
testcase_02 AC 36 ms
52,196 KB
testcase_03 AC 595 ms
133,976 KB
testcase_04 AC 542 ms
123,668 KB
testcase_05 AC 573 ms
134,592 KB
testcase_06 AC 594 ms
134,340 KB
testcase_07 AC 555 ms
123,676 KB
testcase_08 AC 586 ms
135,556 KB
testcase_09 AC 570 ms
136,388 KB
testcase_10 AC 623 ms
140,780 KB
testcase_11 AC 886 ms
176,400 KB
testcase_12 AC 675 ms
178,264 KB
testcase_13 AC 1,221 ms
245,584 KB
testcase_14 AC 1,224 ms
264,592 KB
testcase_15 AC 1,424 ms
279,696 KB
testcase_16 AC 1,234 ms
270,344 KB
testcase_17 AC 1,490 ms
337,156 KB
testcase_18 AC 1,573 ms
328,500 KB
testcase_19 AC 1,621 ms
345,356 KB
testcase_20 AC 1,203 ms
274,192 KB
testcase_21 AC 1,146 ms
255,708 KB
testcase_22 AC 1,744 ms
371,984 KB
testcase_23 AC 623 ms
134,492 KB
testcase_24 AC 630 ms
135,116 KB
testcase_25 AC 582 ms
135,128 KB
testcase_26 AC 630 ms
135,508 KB
testcase_27 AC 614 ms
135,728 KB
testcase_28 AC 633 ms
135,768 KB
testcase_29 AC 594 ms
137,112 KB
testcase_30 AC 643 ms
140,892 KB
testcase_31 AC 665 ms
147,948 KB
testcase_32 AC 1,233 ms
194,420 KB
testcase_33 AC 1,212 ms
272,548 KB
testcase_34 AC 846 ms
222,992 KB
testcase_35 AC 1,442 ms
295,364 KB
testcase_36 AC 1,823 ms
410,612 KB
testcase_37 AC 1,817 ms
386,660 KB
testcase_38 AC 1,247 ms
287,116 KB
testcase_39 AC 1,714 ms
363,388 KB
testcase_40 TLE -
testcase_41 AC 1,035 ms
271,136 KB
testcase_42 AC 973 ms
261,200 KB
testcase_43 AC 274 ms
122,552 KB
testcase_44 AC 281 ms
118,512 KB
testcase_45 AC 352 ms
146,036 KB
testcase_46 AC 309 ms
129,692 KB
testcase_47 AC 237 ms
114,672 KB
testcase_48 AC 325 ms
131,228 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
sys.setrecursionlimit(200050)

MOD = 998244353
N = int(input())
A = list(map(int, input().split()))
UV = [list(map(int, input().split())) for _ in range(N - 1)]
E = [[] for _ in range(N)]
for u, v in UV:
    u -= 1
    v -= 1
    E[u].append(v)
    E[v].append(u)

def dfs(x, p):
    global ans, X
    for y in E[x]:
        if y != p:
            X[y] += (X[x] + Y[x] + A[x]) * A[y]
            X[y] %= MOD
            dfs(y, x)
            Y[x] += (Y[y]+ A[y]) * A[x]
            Y[x] %= MOD
    #print(x,X,Y)

X = [0] * N
Y = [0] * N
ans = 0
dfs(0, -1)
#print(X,sum(X))
#print(Y,sum(Y))
print(sum(X) % MOD)
0