109582024-04-20 18:48:2442Vállalati ügyeletpypy3Elfogadva 100/100418ms260216 KiB
from sys import stdin, stdout
input=stdin.readline

def main():
    N = int(input())
    P = [0]+list(map(int, input().split()))
    A = [0]+list(map(int, input().split()))
    res=[1]*(N+1)
    for i in range(N,0,-1):
        cur=A.pop()
        if isinstance(cur,int):
            cur={cur}
        while res[i] in cur:
            cur.remove(res[i])
            res[i]+=1
        res[P[i]]=max(res[i],res[P[i]])
        if isinstance(A[P[i]],int):
            cur.add(A[P[i]])
            A[P[i]]=cur
        else:
            if len(A[P[i]]) >= len(cur)-100:
                A[P[i]].update(cur)
                #A[P[i]]=A[P[i]].union(cur)
                #A[P[i]] |= cur
            else:
                cur.update(A[P[i]])
                A[P[i]] = cur
    for i in range(1,N+1):
        stdout.write(str(res[i])+' ')
    stdout.write('\n')
        
main()
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva39ms76660 KiB
2Elfogadva259ms181644 KiB
subtask25/5
3Elfogadva41ms76844 KiB
4Elfogadva48ms77040 KiB
5Elfogadva43ms77836 KiB
6Elfogadva39ms78260 KiB
subtask38/8
7Elfogadva41ms76844 KiB
8Elfogadva48ms77040 KiB
9Elfogadva43ms77836 KiB
10Elfogadva39ms78260 KiB
11Elfogadva180ms177364 KiB
12Elfogadva216ms177188 KiB
13Elfogadva189ms176848 KiB
14Elfogadva250ms180052 KiB
subtask412/12
15Elfogadva41ms76844 KiB
16Elfogadva48ms77040 KiB
17Elfogadva43ms77836 KiB
18Elfogadva39ms78260 KiB
19Elfogadva173ms182688 KiB
20Elfogadva202ms178164 KiB
21Elfogadva178ms179272 KiB
22Elfogadva201ms184904 KiB
23Elfogadva195ms182152 KiB
24Elfogadva194ms179452 KiB
subtask517/17
25Elfogadva41ms76844 KiB
26Elfogadva48ms77040 KiB
27Elfogadva43ms77836 KiB
28Elfogadva39ms78260 KiB
29Elfogadva64ms91468 KiB
30Elfogadva59ms91232 KiB
31Elfogadva61ms90976 KiB
32Elfogadva64ms91224 KiB
33Elfogadva65ms90804 KiB
34Elfogadva64ms91548 KiB
35Elfogadva65ms91668 KiB
36Elfogadva63ms91644 KiB
37Elfogadva61ms91236 KiB
38Elfogadva68ms91440 KiB
39Elfogadva65ms91508 KiB
40Elfogadva64ms91484 KiB
41Elfogadva63ms91732 KiB
subtask628/28
42Elfogadva250ms179656 KiB
43Elfogadva237ms183240 KiB
44Elfogadva233ms183368 KiB
45Elfogadva252ms183260 KiB
46Elfogadva231ms182476 KiB
47Elfogadva215ms182764 KiB
48Elfogadva215ms181512 KiB
49Elfogadva201ms185284 KiB
50Elfogadva195ms182588 KiB
subtask730/30
51Elfogadva39ms79684 KiB
52Elfogadva231ms184392 KiB
53Elfogadva41ms76844 KiB
54Elfogadva48ms77040 KiB
55Elfogadva43ms77836 KiB
56Elfogadva39ms78260 KiB
57Elfogadva180ms177364 KiB
58Elfogadva216ms177188 KiB
59Elfogadva189ms176848 KiB
60Elfogadva250ms180052 KiB
61Elfogadva173ms182688 KiB
62Elfogadva202ms178164 KiB
63Elfogadva178ms179272 KiB
64Elfogadva201ms184904 KiB
65Elfogadva195ms182152 KiB
66Elfogadva194ms179452 KiB
67Elfogadva64ms91468 KiB
68Elfogadva59ms91232 KiB
69Elfogadva61ms90976 KiB
70Elfogadva64ms91224 KiB
71Elfogadva65ms90804 KiB
72Elfogadva64ms91548 KiB
73Elfogadva65ms91668 KiB
74Elfogadva63ms91644 KiB
75Elfogadva61ms91236 KiB
76Elfogadva68ms91440 KiB
77Elfogadva65ms91508 KiB
78Elfogadva64ms91484 KiB
79Elfogadva63ms91732 KiB
80Elfogadva250ms179656 KiB
81Elfogadva237ms183240 KiB
82Elfogadva233ms183368 KiB
83Elfogadva252ms183260 KiB
84Elfogadva231ms182476 KiB
85Elfogadva215ms182764 KiB
86Elfogadva215ms181512 KiB
87Elfogadva201ms185284 KiB
88Elfogadva195ms182588 KiB
89Elfogadva347ms198836 KiB
90Elfogadva345ms196756 KiB
91Elfogadva395ms231432 KiB
92Elfogadva418ms260216 KiB
93Elfogadva245ms180868 KiB
94Elfogadva261ms182100 KiB
95Elfogadva231ms186612 KiB
96Elfogadva239ms179052 KiB
97Elfogadva226ms185064 KiB
98Elfogadva273ms180412 KiB
99Elfogadva268ms179384 KiB
100Elfogadva234ms178712 KiB
101Elfogadva254ms185032 KiB