Submission #7021407
Source Code Expand
import sys
input = sys.stdin.readline
sys.setrecursionlimit(1000000)
n, q = map(int, input().split())
ki = [[] for i in range(n + 1)]
for i in range(n - 1):
a, b = map(int, input().split())
ki[a].append(b)
ki[b].append(a)
# print(ki)
cnt = [0] * (n + 1)
for i in range(q):
p, x = map(int, input().split())
cnt[p] += x
# print(cnt)
def d(y, parent):
for i in ki[y]:
if i == parent:
continue
cnt[i] += cnt[y]
d(i, y)
d(1, -1)
print(*cnt[1:])
Submission Info
| Submission Time | |
|---|---|
| Task | D - Ki |
| User | kanade9 |
| Language | Python (3.4.3) |
| Score | 400 |
| Code Size | 537 Byte |
| Status | AC |
| Exec Time | 1584 ms |
| Memory | 230932 KiB |
Judge Result
| Set Name | Sample | All | after_contest | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | 0 / 0 | ||||||
| Status |
|
|
|
| Set Name | Test Cases |
|---|---|
| Sample | a01, a02 |
| All | a01, a02, b03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14 |
| after_contest | after_contest_15, after_contest_16, after_contest_17 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| a01 | AC | 17 ms | 3064 KiB |
| a02 | AC | 17 ms | 3064 KiB |
| after_contest_15 | AC | 22 ms | 3064 KiB |
| after_contest_16 | AC | 1584 ms | 223912 KiB |
| after_contest_17 | AC | 1018 ms | 52348 KiB |
| b03 | AC | 17 ms | 3064 KiB |
| b04 | AC | 1540 ms | 223916 KiB |
| b05 | AC | 1498 ms | 230932 KiB |
| b06 | AC | 860 ms | 46868 KiB |
| b07 | AC | 886 ms | 47636 KiB |
| b08 | AC | 1178 ms | 136348 KiB |
| b09 | AC | 1036 ms | 51856 KiB |
| b10 | AC | 1264 ms | 164984 KiB |
| b11 | AC | 1204 ms | 117728 KiB |
| b12 | AC | 1084 ms | 90672 KiB |
| b13 | AC | 1447 ms | 217520 KiB |
| b14 | AC | 892 ms | 46732 KiB |