def solution(lines):
xc, oc, dc = 0, 0, 0
for i in range(3):
for j in range(3):
if lines[i][j] == "X":
xc += 1
if lines[i][j] == "0":
oc += 1
if lines[i][j] == ".":
dc += 1
if xc != oc and xc != oc + 1:
return "illegal"
ch = set()
for i in range(3):
if lines[0][i] == lines[1][i] == lines[2][i]:
ch.add(lines[0][i])
for i in range(3):
if lines[i][0] == lines[i][1] == lines[i][2]:
ch.add(lines[i][0])
if lines[0][0] == lines[1][1] == lines[2][2]:
ch.add(lines[1][1])
if lines[0][2] == lines[1][1] == lines[2][0]:
ch.add(lines[1][1])
if 'X' in ch and '0' in ch:
return "illegal"
if 'X' in ch and xc == oc + 1:
return "the first player won"
if 'X' in ch:
return "illegal"
if '0' in ch and oc == xc:
return "the second player won"
if '0' in ch and oc < xc:
return "illegal"
if dc == 0:
return "draw"
if xc == oc:
return "first"
if xc == oc + 1:
return "second"
lines = [input(), input(), input()]
print(solution(lines))
80A - Panoramix's Prediction | 1354B - Ternary String |
122B - Lucky Substring | 266B - Queue at the School |
1490A - Dense Array | 1650B - DIV + MOD |
1549B - Gregor and the Pawn Game | 553A - Kyoya and Colored Balls |
1364A - XXXXX | 1499B - Binary Removals |
1569C - Jury Meeting | 108A - Palindromic Times |
46A - Ball Game | 114A - Cifera |
776A - A Serial Killer | 25B - Phone numbers |
1633C - Kill the Monster | 1611A - Make Even |
1030B - Vasya and Cornfield | 1631A - Min Max Swap |
1296B - Food Buying | 133A - HQ9+ |
1650D - Twist the Permutation | 1209A - Paint the Numbers |
1234A - Equalize Prices Again | 1613A - Long Comparison |
1624B - Make AP | 660B - Seating On Bus |
405A - Gravity Flip | 499B - Lecture |