思路: 井字棋有四种情况表示当前玩家获胜,1代表当前玩家棋子

1.行全为1, 即行的和为3

  1. 列全为1, 列的和为3
  2. 主对角全为1--对角和为3 , 副对角全为1--对角和为3
  3. 如果扩展为N*N的话,判断和是否等于N

public class Board {
    public boolean checkWon(int[][] board) {
        // write code here
        int size=board.length;
        int sum=0;
        int i=0;
        int j=0;
        //检查每一行的个数是否为size
        for(i=0;i<size;i++){
            for(j=0;j<size;j++){
                sum+=board[i][j];
            } 
            if(sum==size){
                return true;
            }
        } 
        //检查每一列的个数是否为size
        for(i=0;i<size;i++){
            sum=0;
            for(j=0;j<size;j++){
                sum+=board[j][i];
            } 
            if(size==sum){
                return true;
            }
        } 
        //检查主对角线的值
        sum=0;
        for( i=0;i<size;i++){
             sum+=board[i][i];
            }
        if(size==sum){
            return true;
        } 
    //检查副对角线的值
        sum=0;
        for(i=0;i<size;i++){
            sum+=board[i][size-i-1];
        } 
        if(size==sum){
            return true;
        } 
        return false;
}

}