public static void main(String[] args) {
Scanner in = new Scanner(System.in);
final int SIZE = 3;
int[][] board = new int[SIZE][SIZE];
boolean gotResult = false;
int numOfX = 0;
int numOfO = 0;
// 读入矩阵
for ( int i=0; i<board.length; i++)
{
for ( int j=0; j<board[i].length; j++)
{
board[i][j] = in.nextInt();
}
}
//检查行
for ( int i =0; i<board.length; i++)
{
numOfX = 0;
numOfO = 0;
for ( int j=0; j<board[i].length; j++ )
{
if ( board[i][j] == 1)
{
numOfX++;
}
else
{
numOfO++;
}
}
if ( numOfX == SIZE || numOfO == SIZE )
{
gotResult = true;
break;
}
}
// 检查列
if ( !gotResult)
{
for ( int j =0; j<SIZE; j++)
{
numOfX = 0;
numOfO = 0;
for ( int i=0; i<SIZE; i++ )
{
if ( board[i][j] == 1)
{
numOfX++;
}
else
{
numOfO++;
}
}
if ( numOfX == SIZE || numOfO == SIZE )
{
gotResult = true;
break;
}
}
}
// 检查对角线
if (!gotResult)
{
numOfX = 0;
numOfO = 0;
for ( int i=0,j=0;i<SIZE && j<SIZE; i++,j++)
{
if ( board[i][j] == 1)
{
numOfX++;
}
else
{
numOfO++;
}
if ( numOfX == SIZE || numOfO == SIZE )
{
gotResult = true;
break;
}
}
}
// 检查反对角线
if (!gotResult)
{
numOfX = 0;
numOfO = 0;
for ( int i=0,j=2;i<SIZE && j<SIZE; i++,j--)
{
if ( board[i][j] == 1)
{
numOfX++;
}
else
{
numOfO++;
}
if ( numOfX == SIZE || numOfO == SIZE )
{
gotResult = true;
break;
}
}
}
if (gotResult)
{
if ( numOfX == SIZE)
{
System.out.println("X赢了");
}
else
{
System.out.println("O赢了");
}
}
else
{
System.out.println("没有胜负");
}
}
}