Task: | Laskettelukeskus |
Sender: | Miika |
Submission time: | 2023-11-01 16:18:50 +0200 |
Language: | Python3 (CPython3) |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | WRONG ANSWER | 0 |
#2 | WRONG ANSWER | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.02 s | 1, 2 | details |
#2 | WRONG ANSWER | 0.02 s | 1, 2 | details |
#3 | WRONG ANSWER | 0.02 s | 1, 2 | details |
#4 | TIME LIMIT EXCEEDED | -- | 2 | details |
#5 | TIME LIMIT EXCEEDED | -- | 2 | details |
#6 | ACCEPTED | 0.02 s | 1, 2 | details |
#7 | TIME LIMIT EXCEEDED | -- | 2 | details |
#8 | ACCEPTED | 0.02 s | 1, 2 | details |
#9 | RUNTIME ERROR | 0.56 s | 2 | details |
#10 | WRONG ANSWER | 0.02 s | 1, 2 | details |
#11 | TIME LIMIT EXCEEDED | -- | 2 | details |
#12 | WRONG ANSWER | 0.02 s | 1, 2 | details |
#13 | TIME LIMIT EXCEEDED | -- | 2 | details |
Code
#from collections import Counter n = input() lista = [] lista1 = [] lista2 = [] d = {} for item in range(int(n)-1): a = input().split(" ") lista.append(a) lista1.append(a[0]) lista2.append(a[1]) lenlist = input().split(" ") if int(n) == 1: print(lenlist[0]) exit() for l, item in enumerate(lenlist): lenlist[l] = int(item) leaves = set() leaves.update(*lista2) leaves -= set(lista1) def dfs(data, path, paths): datum = path[-1] if datum in data: for val in data[datum]: new_path = path + [val] paths = dfs(data, new_path, paths) else: paths += [path] return paths def enumerate_paths(graph): nodes = list(graph.keys()) all_paths = [] for node in nodes: node_paths = dfs(graph, [node], []) all_paths += node_paths return all_paths for item in lista: if int(item[0]) in d: d[int(item[0])].append(int(item[1])) else: d[int(item[0])] = [int(item[1])] paths = enumerate_paths(d)[:len(leaves)] ma = max(len(x) for x in paths) placeholder = 0 for i in range(ma): if max(lenlist) < 1: print(placeholder) exit() try: if max(lenlist) > 0: for j, item in enumerate(paths): g = lenlist[item[-1]-1] placeholder += g for one in item: lenlist[one-1] -= g #print(lenlist) #print(item) #print("--------------------------") if lenlist[item[-1]-1] < 1: paths[j].pop(-1) except Exception: print(7) print(placeholder)
Test details
Test 1
Group: 1, 2
Verdict: ACCEPTED
input |
---|
5 1 2 1 3 3 4 3 5 ... |
correct output |
---|
6 |
user output |
---|
6 |
Test 2
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
100 1 73 1 64 64 23 1 88 ... |
correct output |
---|
2675 |
user output |
---|
7 7 61 |
Test 3
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
100 1 36 36 56 56 59 36 97 ... |
correct output |
---|
2808 |
user output |
---|
7 81 |
Test 4
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 1 45452 1 74209 45452 78960 45452 79820 ... |
correct output |
---|
28399367694319 |
user output |
---|
(empty) |
Test 5
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 1 31165 1 23263 31165 89516 31165 53122 ... |
correct output |
---|
28546840313799 |
user output |
---|
(empty) |
Test 6
Group: 1, 2
Verdict: ACCEPTED
input |
---|
100 1 79 79 9 79 45 45 10 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 7
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 1 66038 1 56789 56789 7403 66038 69542 ... |
correct output |
---|
0 |
user output |
---|
(empty) |
Test 8
Group: 1, 2
Verdict: ACCEPTED
input |
---|
100 1 2 2 3 3 4 4 5 ... |
correct output |
---|
100 |
user output |
---|
100 |
Test 9
Group: 2
Verdict: RUNTIME ERROR
input |
---|
100000 1 2 2 3 3 4 4 5 ... |
correct output |
---|
1000000000 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "/box/input/code.py", line 44, in <module> p...
Test 10
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
100 1 2 1 3 2 4 2 5 ... |
correct output |
---|
2809 |
user output |
---|
28 |
Test 11
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 1 2 1 3 2 4 2 5 ... |
correct output |
---|
26053917212428 |
user output |
---|
(empty) |
Test 12
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
100 1 2 1 3 2 4 2 5 ... |
correct output |
---|
5000 |
user output |
---|
100 |
Test 13
Group: 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 1 2 1 3 2 4 2 5 ... |
correct output |
---|
50000000000000 |
user output |
---|
(empty) |