CSES - Putka Open 2020 – 4/5 - Results
Submission details
Task:Peli
Sender:rasastusni
Submission time:2020-11-07 22:28:29 +0200
Language:Python2 (PyPy2)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
Test results
testverdicttimegroup
#10.14 s1, 2details
#20.22 s2details

Code

#!/usr/bin/env python
seen_states = []
def solve(n, first, second, prev_move, turn):
#print n, first, second, prev_move, turn
if (first, second, prev_move, turn) in seen_states:
return turn
seen_states.append((first, second, prev_move, turn))
if first > 0 and prev_move != 2:
winner = solve(n, first - 1, second, 1, not turn)
if winner == turn:
return winner
if first + 1 != second and prev_move != 1:
winner = solve(n, first + 1, second, 2, not turn)
if winner == turn:
return winner
if second + 1 < n and prev_move != 3:
winner = solve(n, first, second + 1, 4, not turn)
if winner == turn:
return winner
if second - 1 != first and prev_move != 4:
winner = solve(n, first, second - 1, 3, not turn)
if winner == turn:
return winner
return not turn
#for n in range(2, 16):
# for l in range(n - 1):
# for r in range(l + 1, n):
# seen_states = []
# sol = 2 if solve(n, l, r, None, False) else 1
# if sol != (r - l) % 2 + 1:
# print n, l, r, sol
#
#raise Exception('done')
t = int(raw_input())
for x in range(t):
seen_states = []
thing = raw_input()
first = thing.find('P')
second = first + 1 + thing[first+1:].find('P')
print 2 if solve(len(thing), first, second, None, False) else 1

Test details

Test 1

Group: 1, 2

Verdict:

input
100
PP.
P......P.
.PP
..P.P.
...

correct output
2
2
2
1
2
...

user output
2
1
2
1
2
...
Truncated

Test 2

Group: 2

Verdict:

input
100
.................................

correct output
2
1
2
1
1
...

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 43, in <module>
    print...