Task: | Sadonkorjuu |
Sender: | Lordoa |
Submission time: | 2022-11-13 20:15:00 +0200 |
Language: | Python3 (PyPy3) |
Status: | READY |
Result: | 33 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 33 |
#2 | TIME LIMIT EXCEEDED | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.04 s | 1, 2 | details |
#2 | ACCEPTED | 0.04 s | 1, 2 | details |
#3 | ACCEPTED | 0.04 s | 1, 2 | details |
#4 | ACCEPTED | 0.04 s | 1, 2 | details |
#5 | ACCEPTED | 0.04 s | 1, 2 | details |
#6 | ACCEPTED | 0.09 s | 1, 2 | details |
#7 | TIME LIMIT EXCEEDED | -- | 2 | details |
#8 | ACCEPTED | 0.07 s | 1, 2 | details |
#9 | TIME LIMIT EXCEEDED | -- | 2 | details |
#10 | ACCEPTED | 0.07 s | 1, 2 | details |
#11 | ACCEPTED | 0.31 s | 2 | details |
#12 | RUNTIME ERROR | 0.46 s | 2 | details |
#13 | ACCEPTED | 0.47 s | 2 | details |
#14 | ACCEPTED | 0.30 s | 2 | details |
#15 | ACCEPTED | 0.17 s | 1, 2 | details |
#16 | ACCEPTED | 0.07 s | 1, 2 | details |
#17 | ACCEPTED | 0.07 s | 1, 2 | details |
#18 | ACCEPTED | 0.09 s | 1, 2 | details |
#19 | ACCEPTED | 0.07 s | 1, 2 | details |
#20 | ACCEPTED | 0.07 s | 1, 2 | details |
#21 | TIME LIMIT EXCEEDED | -- | 2 | details |
#22 | ACCEPTED | 0.32 s | 2 | details |
#23 | ACCEPTED | 0.49 s | 2 | details |
#24 | ACCEPTED | 0.09 s | 1, 2 | details |
#25 | ACCEPTED | 0.85 s | 2 | details |
#26 | ACCEPTED | 0.10 s | 1, 2 | details |
#27 | ACCEPTED | 0.86 s | 2 | details |
#28 | ACCEPTED | 0.09 s | 1, 2 | details |
#29 | TIME LIMIT EXCEEDED | -- | 2 | details |
#30 | ACCEPTED | 0.09 s | 1, 2 | details |
#31 | TIME LIMIT EXCEEDED | -- | 2 | details |
Code
n = int(input())type = [0] + [int(x) for x in input().split()]uwu = {0:[]}gps={0:0}for a in range(n+1):if type[a]==1:uwu[a]=[]gps[a+1]=Nonefor a in range(n-1):rawr = [int(x) for x in input().split()]if type[rawr[0]] == 0 and type[rawr[1]] == 0:continueif type[rawr[0]] == 0:uwu[0].append((rawr[1],rawr[2]))uwu[rawr[1]].append((0,rawr[2]))continueif type[rawr[1]] == 0:uwu[0].append((rawr[0],rawr[2]))uwu[rawr[0]].append((0,rawr[2]))continueuwu[rawr[0]].append((rawr[1],rawr[2]))uwu[rawr[1]].append((rawr[0],rawr[2]))#uwu = {0: [(2, 30), (6, 60), (1, 10)], 1: [(2, 20), (0, 10)], 2: [(1, 20), (0, 30), (5, 50)], 5: [(2, 50)], 6: [(0, 60)]}# Serious move, serious series... Dynamic Programming# Well I have no clue if using a dict is considered dynamic programming...visited = set()def route(city):if gps[city]!=None:return gps[city]visited.add(city)min = Nonefor paths in uwu[city]:if paths[0] in visited:continueif min is not None and min < paths[1]:continuenuzzle = route(paths[0])if nuzzle is not None:nuzzle += paths[1]if min is None or nuzzle<min:min = nuzzleif len(visited)==1:gps[city] = minvisited.remove(city)return minsum = 0for a in range(n):if type[a+1]==1:visited.clear()wow = route(a+1)sum += wowprint(sum)'''n = int(input())type = [0] + [int(x) for x in input().split()]uwu = {0:[]}gps={}print(type)for a in range(n+1):if type[a]==1:uwu[a]=[]gps[a]=Noneprint(uwu)for a in range(n-1):rawr = [int(x) for x in input().split()]if type[rawr[0]] == 0 and type[rawr[1]] == 0:continueelif type[rawr[0]] == 0:uwu[0].append((rawr[1],rawr[2]))elif type[rawr[1]] == 0:uwu[0].append((rawr[0],rawr[2]))else:uwu[rawr[0]].append((rawr[1],rawr[2]))uwu[rawr[1]].append((rawr[0],rawr[2]))print(uwu)#uwu = {1: [(2, 20), (4, 10)], 2: [(1, 20), (3, 30), (5, 50)], 3: [(2, 30), (6, 60)], 4: [(1, 10)], 5: [(2, 50)], 6: [(3, 60)]}#uwu = {0: [(2, 30), (6, 60), (1, 10)], 1: [(2, 20)], 2: [(1, 20), (5, 50)], 5: [(2, 50)], 6: []}# Serious move, serious series... Dynamic Programming, maybe for real this time!def route(city, target, dis=0):if gps[city]!=None:return gps[city]min = Nonefor paths in uwu[city]:if paths[0] in uwu[0]:if min is not None and min < paths[1]:continueif paths[0] not in visited:nuzzle = route(paths[0])if nuzzle is not None:nuzzle += paths[1]if paths[0] not in visited and (nuzzle is not None and (min is None or nuzzle<min)):min = nuzzleif len(visited)==1:gps[city] = minvisited.remove(city)return minsum = 0for a in range(n):if type[a]==1:visited.clear()wow = route(a+1)sum += wowprint(sum)'''
Test details
Test 1
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1 0 |
correct output |
---|
0 |
user output |
---|
0 |
Test 2
Group: 1, 2
Verdict: ACCEPTED
input |
---|
5 0 0 0 0 0 1 2 1 2 3 2 3 4 3 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 3
Group: 1, 2
Verdict: ACCEPTED
input |
---|
4 1 0 1 1 1 2 10 2 3 20 2 4 30 |
correct output |
---|
60 |
user output |
---|
60 |
Test 4
Group: 1, 2
Verdict: ACCEPTED
input |
---|
5 0 1 1 1 0 1 2 10 2 3 20 3 4 30 ... |
correct output |
---|
80 |
user output |
---|
80 |
Test 5
Group: 1, 2
Verdict: ACCEPTED
input |
---|
5 0 1 0 1 1 1 2 1 2 3 5 3 4 3 ... |
correct output |
---|
6 |
user output |
---|
6 |
Test 6
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
5506363 |
user output |
---|
5506363 |
Test 7
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
1795118520 |
user output |
---|
(empty) |
Test 8
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 0 0 1 0 1 1 0 1 0 1 1 0 0 0 1 ... |
correct output |
---|
293576 |
user output |
---|
293576 |
Test 9
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
816932444 |
user output |
---|
(empty) |
Test 10
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... |
correct output |
---|
3089 |
user output |
---|
3089 |
Test 11
Group: 2
Verdict: ACCEPTED
input |
---|
200000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... |
correct output |
---|
40839 |
user output |
---|
40839 |
Test 12
Group: 2
Verdict: RUNTIME ERROR
input |
---|
200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
5683983203973 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "input/code.py", line 53, in <module> wow =...
Test 13
Group: 2
Verdict: ACCEPTED
input |
---|
200000 0 1 1 1 1 1 1 0 0 0 1 1 0 1 0 ... |
correct output |
---|
58572993 |
user output |
---|
58572993 |
Test 14
Group: 2
Verdict: ACCEPTED
input |
---|
200000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... |
correct output |
---|
32755 |
user output |
---|
32755 |
Test 15
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
126238345 |
user output |
---|
126238345 |
Test 16
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 0 0 0 1 0 1 1 1 0 0 1 0 1 1 0 ... |
correct output |
---|
278678 |
user output |
---|
278678 |
Test 17
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 ... |
correct output |
---|
34929 |
user output |
---|
34929 |
Test 18
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
1543963 |
user output |
---|
1543963 |
Test 19
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... |
correct output |
---|
39606 |
user output |
---|
39606 |
Test 20
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 0 1 0 1 0 0 0 0 1 1 0 0 0 1 ... |
correct output |
---|
321598 |
user output |
---|
321598 |
Test 21
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
978670626 |
user output |
---|
(empty) |
Test 22
Group: 2
Verdict: ACCEPTED
input |
---|
200000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... |
correct output |
---|
375218 |
user output |
---|
375218 |
Test 23
Group: 2
Verdict: ACCEPTED
input |
---|
200000 1 1 1 1 0 0 0 0 0 1 0 1 0 1 1 ... |
correct output |
---|
60422556 |
user output |
---|
60422556 |
Test 24
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
291990 |
user output |
---|
291990 |
Test 25
Group: 2
Verdict: ACCEPTED
input |
---|
200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
59607954 |
user output |
---|
59607954 |
Test 26
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
990 |
user output |
---|
990 |
Test 27
Group: 2
Verdict: ACCEPTED
input |
---|
200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
199982 |
user output |
---|
199982 |
Test 28
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
7987 |
user output |
---|
7987 |
Test 29
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
200000 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
3137875 |
user output |
---|
(empty) |
Test 30
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
4657693 |
user output |
---|
4657693 |
Test 31
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
200000 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
correct output |
---|
1652889357 |
user output |
---|
(empty) |