import java.util.*;

public class Board {
    public boolean checkWon(int[][] board) {
        // write code here
        int n=board.length;//获取二维数组的长度
        int sum=0;//统计某1行或某1列的数字和,看等不等于n
        //1统计行 
        for(int i=0;i<n;i++){
            sum=0;//先置0,因为上一次sum有数据
            for(int j=0;j<n;j++){
                sum+=board[i][j]; //统计和 行号不变列号变
            }
            if(sum==n){  //最后出来(从一行中出来),能对上n,则代表当前行,是一条线
            return true;
            }      
        } 
        //2统计列
        for(int i=0;i<n;i++){
            sum=0;//先置0,以免有数据残留
            for(int j=0;j<n;j++){
                sum+=board[j][i];//列号不变,行号变,所以这里行是j
            }
            if(sum==n){
                return true; //有列满足,则为TRUE
            }
        }
        //3,统计主对角线
        sum=0;//先在外面清空,不能在for循环里面清空
        for(int i=0;i<n;i++){
            sum+=board[i][i];//因为下标一样
        }
        if(sum==n){
            return true;//出来后,主对角线满足条件,返回TRUE
        }

        //统计副对角线
        sum=0; //先清0
        for(int i=0;i<n;i++){
            sum+=board[i][n-1-i];//下标和为n-1
        }
        if(sum==n){
            return true;//副对角线满足
        }
        return false;//走到这里都不满足,则为FALSE

          
    }
}