Task: | Peli |
Sender: | okkokko |
Submission time: | 2022-01-22 16:47:58 +0200 |
Language: | Python3 (PyPy3) |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | RUNTIME ERROR | 0 |
#2 | RUNTIME ERROR | 0 |
#3 | RUNTIME ERROR | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | RUNTIME ERROR | 0.06 s | 1, 2, 3 | details |
#2 | RUNTIME ERROR | 0.06 s | 2, 3 | details |
#3 | RUNTIME ERROR | 0.06 s | 3 | details |
#4 | RUNTIME ERROR | 0.06 s | 1, 2, 3 | details |
#5 | RUNTIME ERROR | 0.06 s | 1, 2, 3 | details |
Code
from itertools import product def I(): return map(int, input().split()) def main(): n, m = I() # y,x sokStr = [input() for _ in range(n)] def findPerson(person): for i in range(n): a = sokStr[i].find(person) if a != -1: return a, i Ax, Ay = findPerson("A") Bx, By = findPerson("B") Apath = [] Bpath = [] sokkelo = [[1 if i == "#" else 0 for i in s] for s in sokStr] # wall is 1, A is 2, B is 3 def mark(x, y, side): if not sokkelo[y][x]: sokkelo[y][x] = side (Apath if side == 2 else Bpath).append((y, x)) for a in (1, -1): if 1 <= x + a < m - 1: # jokainen reunaruutu on seinää mark(x + a, y, side) if 1 <= y + a < n - 1: mark(x, y + a, side) def markA(x, y): if not sokkelo[y][x]: sokkelo[y][x] = 2 Apath.append((y, x)) for a in (1, -1): if 1 <= x + a < m - 1: # jokainen reunaruutu on seinää markA(x + a, y) if 1 <= y + a < n - 1: markA(x, y + a) def markB(x, y): if not sokkelo[y][x]: sokkelo[y][x] = 3 Bpath.append((y, x)) for a in (1, -1): if 1 <= x + a < m - 1: # jokainen reunaruutu on seinää markB(x + a, y) if 1 <= y + a < n - 1: markB(x, y + a) try: markA(Ax, Ay) # Virhe on täällä, ei ole IndexError except: # print(0) # return pass if sokkelo[By][Bx] == 2: print(1) return markB(Bx, By) def manhattan(a, b): return abs(a[0] - b[0]) + abs(a[1] - b[1]) print(min(manhattan(a, b) for a, b in product(Apath, Bpath))) if __name__ == "__main__": main()
Test details
Test 1
Group: 1, 2, 3
Verdict: RUNTIME ERROR
input |
---|
100000 3 BBAACBCBACBACABBCBAABCBCCBCCAA... |
correct output |
---|
18201 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "input/code.py", line 70, in <module> main()...
Test 2
Group: 2, 3
Verdict: RUNTIME ERROR
input |
---|
100000 10 BAACABCCBCBAACBBCCCCABBBBACCBA... |
correct output |
---|
29684 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "input/code.py", line 70, in <module> main()...
Test 3
Group: 3
Verdict: RUNTIME ERROR
input |
---|
100000 50 ACAABCBBAAAACCBBABACACACBCAACA... |
correct output |
---|
32740 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "input/code.py", line 70, in <module> main()...
Test 4
Group: 1, 2, 3
Verdict: RUNTIME ERROR
input |
---|
3 1 ABC |
correct output |
---|
0 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "input/code.py", line 70, in <module> main()...
Test 5
Group: 1, 2, 3
Verdict: RUNTIME ERROR
input |
---|
3 2 ABC |
correct output |
---|
0 |
user output |
---|
(empty) |
Error:
Traceback (most recent call last): File "input/code.py", line 70, in <module> main()...