您的位置:首页 > 其它

Leetcode 348. Design Tic-Tac-Toe

2017-05-03 07:36 344 查看
1、声明一个两个数组 rows, cols ,三个整数diagonal , anti_diagonal 和 size 

2、用rows, cols,diagonal , anti_diagonal 来记录player 的 位置以便于检查获胜条件

public class TicTacToe {

private int[] rows;
private int[] cols;
private int diagonal;
private int anti_diagonal;
private int size;

public int move(int row, int col, int player) {
int toAdd = player == 1 ? 1 : -1;
rows[row] += toAdd;
cols[col] += toAdd;
if (row == col) diagonal += toAdd;
if (col == (size - row - 1)) anti_diagonal += toAdd;
return check(row,col,player);
}

private int check(int row, int col, int player) {
if (Math.abs(rows[row]) == size || Math.abs(cols[col]) == size || Math.abs(diagonal) == size || Math.abs(anti_diagonal) == size )
{return player;}
return 0;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: