Problem p02936 (python)

Fixed submission:
from collections import deque

n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+1)

to = [[] for i in range(n+1)]
cnt = [0] * (n)
for i in range(1,n):
    a,b = [int(j) for j in input().split()]
    to[a].append(b)
    to[b].append(a)
for i in range(1,q+1):
    P,X = [int(j) for j in input().split()]
    T[P] += X
NIL = -1

q =deque()
q.append((1,0,NIL))
while len(q)>0:
    p,x,prev = q.pop()
    x += T[p]
    cnt[p-1] = x
    for i in to[p]:
        if i != prev:
            q.append((i,x,p))
print(*cnt)

Buggy submission (verdict: Runtime Error):
n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+1)
A = [0] * (n+1)
B = [0] * (n+1)
P = [0] * (q+1)
X = [0] * (q+1)
to = [] * n+1
cnt = [[] for i in range(n+1)] 
for i in range(1,n):
    A[i],B[i] = [int(j) for j in input().split()]
    to[A[i]].append(B[i])
    to[B[i]].append(A[i])
for i in range(1,q+1):
    P[i],X[i] = [int(j) for j in input().split()]
    T[P[i]] = X[i]
NIL = -1

q =deque()
q.append((1,0,NIL))
while len(q)>0:
    p,x,prev = q.pop()
    x += T[p]
    cnt[p] = x
    for i in to[p]:
        if i != prev:
            q.append((i,x,p))

print(*cnt)

Buggy submission (verdict: Runtime Error):
n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+1)
A = [0] * (n+1)
B = [0] * (n+1)
P = [0] * (q+1)
X = [0] * (q+1)
for i in range(1,n):
    A[i],B[i] = [int(j) for j in input().split()]
for i in range(1,q+1):
    P[i],X[i] = [int(j) for j in input().split()]

NIL = -1

class node:
    def __init__(self):
        self.value = 0
        self.child = []
        self.parent = NIL

def childadd(T,x):
    for i in range(len(T[x].child)):
        T[T[x].child[i]].value += T[x].value
        if T[T[x].child[i]].child != []:
            childadd(T,T[x].child[i])


T[1] = node()
T[1].parent = 0
for i in range(1,n):
    if T[A[i]].parent != NIL:
        T[B[i]] = node()
        T[A[i]].child.append(B[i])
        T[B[i]].parent = T[A[i]]
    else:
        T[A[i]] = node()
        T[B[i]].child.append(A[i])
        T[A[i]].parent = T[B[i]]

for i in range(1,q+1):
    T[P[i]].value += X[i]

childadd(T,1)

for i in range(1,n+1):
    print(T[i].value,end = " ")

Buggy submission (verdict: Runtime Error):
n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+1)
A = [0] * (n+1)
B = [0] * (n+1)
P = [0] * (q+1)
X = [0] * (q+1)
for i in range(1,n):
    A[i],B[i] = [int(j) for j in input().split()]
for i in range(1,q+1):
    P[i],X[i] = [int(j) for j in input().split()]

NIL = -1

class node:
    def __init__(self):
        self.value = 0
        self.child = []
        self.parent = NIL

def childadd(T,x):
    for i in range(len(T[x].child)):
        T[T[x].child[i]].value += T[x].value
        if T[T[x].child[i]].child != []:
            childadd(T,T[x].child[i])

for i in range(1,n+1):
    T[i] = node()

for i in range(1,n):
    T[A[i]].child.append(B[i])

for i in range(1,q+1):
    T[P[i]].value += X[i]

childadd(T,1)

for i in range(1,n+1):
    print(T[i].value,end = " ")

Buggy submission (verdict: Runtime Error):
n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+1)
A = [0] * (n+1)
B = [0] * (n+1)
P = [0] * (q+1)
X = [0] * (q+1)
for i in range(1,n):
    A[i],B[i] = [int(j) for j in input().split()]
for i in range(1,q+1):
    P[i],X[i] = [int(j) for j in input().split()]

NIL = -1

class node:
    def __init__(self):
        self.value = 0
        self.child = []
        self.parent = NIL

def childadd(T,x):
    for i in range(len(T[x].child)):
        T[T[x].child[i]].value += T[x].value
        childadd(T,T[x].child[i])

for i in range(1,n+1):
    T[i] = node()

for i in range(1,n):
    T[A[i]].child.append(B[i])

for i in range(1,q+1):
    T[P[i]].value += X[i]

childadd(T,1)

for i in range(1,n+1):
    print(T[i].value,end = " ")

Buggy submission (verdict: Runtime Error):
n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+5)
A = [0] * (n+5)
B = [0] * (n+5)
P = [0] * (q+5)
X = [0] * (q+5)
for i in range(1,n):
    A[i],B[i] = [int(j) for j in input().split()]
for i in range(1,q+1):
    P[i],X[i] = [int(j) for j in input().split()]

NIL = -1

class node:
    def __init__(self):
        self.value = 0
        self.child = []
        self.parent = NIL

def childadd(T,x):
    for i in range(len(T[x].child)):
        T[T[x].child[i]].value += T[x].value
        childadd(T,T[x].child[i])

for i in range(1,n+1):
    T[i] = node()

for i in range(1,n):
    T[B[i]].parent = T[A[i]]
    T[A[i]].child.append(B[i])

for i in range(1,q+1):
    T[P[i]].value += X[i]

childadd(T,1)

for i in range(1,n+1):
    print(T[i].value,end = " ")

Buggy submission (verdict: Runtime Error):
n,q = input().split()
n = int(n)
q = int(q)
T = [0] * (n+5)
A = [0] * (n+5)
B = [0] * (n+5)
P = [0] * (q+5)
X = [0] * (q+5)
for i in range(1,n):
    A[i],B[i] = [int(j) for j in input().split()]
for i in range(1,q+1):
    P[i],X[i] = [int(j) for j in input().split()]

NIL = -1

class node:
    def __init__(self):
        self.value = 0
        self.child = []
        self.parent = NIL

def childadd(T,x):
    if T[x].child != []:
        for i in range(len(T[x].child)):
            T[T[x].child[i]].value += T[x].value
            childadd(T,T[x].child[i])

for i in range(1,n+1):
    T[i] = node()

for i in range(1,n):
    T[B[i]].parent = T[A[i]]
    T[A[i]].child.append(B[i])

for i in range(1,q+1):
    T[P[i]].value += X[i]

childadd(T,1)

for i in range(1,n+1):
    print(T[i].value,end = " ")