码迷,mamicode.com
首页 > 其他好文 > 详细

Valid Sudoku

时间:2015-04-14 16:13:00      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:

/*
给一个不完整的数独,‘.‘代表为空判断数独是否合法
*/
public class Solution {
    public boolean check1(char[][] board){
        for(int i = 0 ; i < 9 ; i ++){
            int[] rows = new int[10];
            int[] col = new int[10];
            int[] cube = new int[10];
            for(int j = 0 ; j <9 ; j++){
               if(board[i][j]!=‘.‘){//检查每行
                   if(rows[board[i][j]-‘0‘] == 1) return false;
                   else  rows[board[i][j]-‘0‘] = 1;
               }
               if(board[j][i]!=‘.‘){//检查每列
                   if(col[board[j][i]-‘0‘] == 1) return false;
                   else  col[board[j][i]-‘0‘] = 1;
               }
               int n = (i/3)*3;
               int m = (i%3)*3;
               if(board[n+j/3][m+j%3]!=‘.‘){//检查每个小正方形
                   if(cube[board[n+j/3][m+j%3]-‘0‘] == 1) return false;
                   else cube[board[n+j/3][m+j%3]-‘0‘] = 1;
               }
            }
        }
        return true;
    }
    public boolean isValidSudoku(char[][] board) {
        return check1(board);
    }
}

 

Valid Sudoku

标签:

原文地址:http://www.cnblogs.com/llei1573/p/4424956.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!