hiho week 217 register

Ended

Participants:160

Verdict:Accepted
Score:100 / 100
Submitted:2018-08-31 01:04:10

Lang:Python2

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
n = input()
e = [[] for i in range(n + 1)]
s = [0] * (n + 1)
v = [0] * (n + 1)
r = [0] * (n + 1)
for i in range(1n + 1):
    ps[i] = raw_input().split()
    e[int(p)].append(i)
def dfs(u):
    if len(e[u]) == 0:
        r[u] = -1
        v[u] = eval(s[u].capitalize())
        return
    
    ab = e[u]
    dfs(a)
    dfs(b)
    
    v[u] = eval('v[a] %s v[b]' % s[u].lower())
    if v[a] != v[b]:
        r[u] = 1
        return
    if r[a] == r[b] == -1:
        r[u] = -1
        return
    if r[a] == -1:
        r[u] = r[b]
    elif r[b] == -1:
        r[u] = r[a]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX