• 2443 三子棋游戏

    Time Limit : 10000/5000 MS(Java/Others) | Memory Limit : 131072/65536 KB(Java/Others)

    Submits : 207 | Solved : 36

    Description

    三子棋游戏是一个小孩玩的游戏,在一个3*3的棋盘中进行。游戏有两个玩家,其中一个玩家(用字母“X”表示)先走棋,在一个没有被占用的网格位置中放置一个X。然后另一个玩家(用字母“O”表示),在一个没有被占用的网格中放置一个O。这两个玩家交替地放置X和O,直到棋盘的网格都被占用了,或者某个玩家的棋子占据了整条线(水平、垂直或者对角线)。游戏开始时棋盘是空的,用3行3列共9个字符“.”表示。如果X玩家走棋,则在相应的位置上放置X;如果是O玩家走棋,则在相应位置上放置O。下面的棋盘表示从游戏开始直到X玩家最后赢得比赛的一系列走棋过程。 你的任务是读入棋盘状态,判断其可不可能是一个有效的三子棋棋盘,也就是说是否存在一系列走棋,能到达该棋盘状态。

    ...    X..    X.O    X.O    X.O    X.O    X.O    X.O

    ...    ...    ...    ...    .O.    .O.    OO.    OO.

    ...    ...    ...    ..X    ..X    X.X    X.X    XXX


    Input

    输入的第1行是整数N,表示测试数据的个数,接下来有4*N-1行,表示N个棋盘格局,每两个棋盘格局之间用空行隔开。

    Output

    对每个棋盘格局,如果是一个有效的三子棋格局,则输出yes,否则输出no。

    Sample Input

    2
    X.O
    OO.
    XXX
    
    O.X
    XX.
    OOO
    

    Sample Output

    yes
    no

    HINT


    Source

    NBU OJ

    [ Top ] | [ Submit ] | [ Statistics ] | [ Standing ]