leetcode之valid sudoku

来源:互联网 发布:大数据培训班多少钱 编辑:程序博客网 时间:2024/06/09 12:35

题目:

Determine if a Sudoku is valid

解答:

就是分别对行,列,宫格进行出现的数字的判断即可

class Solution {public:    bool isValidSudoku(vector<vector<char>>& board) {        memset(cols,0,sizeof(cols));        memset(rows,0,sizeof(rows));        memset(grid,0,sizeof(grid));        for(int i = 0;i < 9;++i)        {            for(int j = 0;j < 9;++j)            {                if(board[i][j] == '.')                    continue;                int t = board[i][j] - '0';                if(cols[j][t] == true)                    return false;                cols[j][t] = true;                if(rows[i][t] == true)                    return false;                rows[i][t] = true;                if(grid[i/3][j/3][t] == true)                    return false;                grid[i/3][j/3][t] = true;            }        }        return true;    }private:    bool cols[9][10];    bool rows[9][10];    bool grid[3][3][10];};

0 0