TopCoder

Thumb
Posen
樂觀 樂觀 要樂觀

User's AC Ratio

60.8% (59/97)

Submission's AC Ratio

20.3% (91/449)

Tags

Description

大家應該都有玩過「井字遊戲」吧?
在這個遊戲中,先手是O,後手是X。兩人輪流在一個井字形狀的棋盤中的一個空格畫上O或X,一旦出現同樣的O(或X)連成一條線(直的、橫的或對角線),那麼遊戲終止,且先手(或後手)獲勝。如果九個格子都被填滿,還沒有人獲勝,那麼遊戲也終止,且兩個人平手。

我們用3x3的字元陣列代表一個盤面,例如:

...
.O.
OXX

其中'.'代表空格,'O'以及'X'分別代表先手和後手所放置的符號。

喔當然,裡面不能出現其它字元的。

現在給你一個盤面,請你判斷這個盤面是否為遊戲過程、或遊戲終止時可能的盤面?

Input Format

總共有3列,每列3個字元,總共九個字元。

Output Format

如果這個盤面是遊戲過程或遊戲終止時可能的盤面,請你輸出"POSSIBLE",否則輸出"IMPOSSIBLE"。

Sample Input

Sample Input #1:
...
...
...

Sample Input #2:
..O
.O.
OXX

Sample Input #3:
..O
.O.
O..

Sample Input #4:
XOX
OOX
OXO

Sample Input #5:
ORZ
...
...

Sample Output

Sample Output #1:
POSSIBLE

Sample Output #2:
POSSIBLE

Sample Output #3:
IMPOSSIBLE

Sample Output #4:
POSSIBLE

Sample Output #5:
IMPOSSIBLE

Hints

這題沒有那麼簡單喔!

※2008/02/04題目敘述更正:感謝su_horng。

Problem Source

原TIOJ1056 / C/C++程式設計入門。Problem Setter: Tmt,TimeString,TDYa127

Subtasks

For Testdata: 0 ~ 0, Score: 10
For Testdata: 1 ~ 1, Score: 10
For Testdata: 2 ~ 2, Score: 10
For Testdata: 3 ~ 3, Score: 10
For Testdata: 4 ~ 4, Score: 10
For Testdata: 5 ~ 5, Score: 10
For Testdata: 6 ~ 6, Score: 10
For Testdata: 7 ~ 7, Score: 10
For Testdata: 8 ~ 8, Score: 10
For Testdata: 9 ~ 9, Score: 10
No. Time Limit (ms) Memory Limit (KiB) Output Limit (KiB)
0 1000 65536 65536
1 1000 65536 65536
2 1000 65536 65536
3 1000 65536 65536
4 1000 65536 65536
5 1000 65536 65536
6 1000 65536 65536
7 1000 65536 65536
8 1000 65536 65536
9 1000 65536 65536