美文网首页
36. Valid Sudoku

36. Valid Sudoku

作者: Al73r | 来源:发表于2017-09-30 15:43 被阅读0次

题目

Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.
The Sudoku board could be partially filled, where empty cells are filled with the character '.'
.


A partially filled sudoku which is valid.

Note:A valid Sudoku board (partially filled) is not necessarily solvable. Only the filled cells need to be validated.

分析

数独规则是每行每列以及没个小方框中的数字都是0~9且都没有重复的数字。
所以就分别遍历每行、每列以及没个小方框,判断有无重复的数字即可。

实现

class Solution {
public:
    bool isValidSudoku(vector<vector<char>>& board) {
        for(int i=0; i<9; i++){
            int trow[9]={0}, tcol[9]={0}, tblk[9]={0};
            for(int j=0; j<9; j++){
                if(board[i][j]!='.'){
                    int nrow = board[i][j] - '0' - 1;
                    if(trow[nrow]) return false;
                    trow[nrow]++;
                }
                if(board[j][i]!='.'){
                    int ncol = board[j][i] - '0' - 1;
                    if(tcol[ncol]) return false;
                    tcol[ncol]++;
                }
                int x = i / 3 * 3 + j / 3;
                int y = i % 3 * 3 + j % 3;
                if(board[x][y]!='.'){
                    int nblk = board[x][y] - '0' - 1;
                    if(tblk[nblk]) return false;
                    tblk[nblk]++;
                }
            }
        }
        return true;
    }
};

思考

在这里没有判断出现除'1'~'9'和'.'之外的符号怎么办,严谨点应该加上。

相关文章

  • hash_table-special

    目录: 36、 Valid Sudoku 36. Valid Sudoku Determine if a Sudo...

  • Leetcode-36 有效的数独

    36. 有效的数独[https://leetcode-cn.com/problems/valid-sudoku/]...

  • 36. Valid Sudoku

    这一题按照三步走的策略,首先检查每一行是否有重复的,再检查每一列,最后检查每一块,都是按照字典去查找,代码如下: ...

  • 36. Valid Sudoku

    Determine if a 9x9 Sudoku board is valid. Only the filled...

  • 36. Valid Sudoku

    题目 Determine if a Sudoku is valid, according to: Sudoku P...

  • 36. Valid Sudoku

    这题的解法是brute force,复杂度是O(81 + 81)。。。判断每一行每一列的代码我的想法跟code g...

  • 36. Valid Sudoku

    问题 Determine if a Sudoku is valid, according to: Sudoku P...

  • 36. Valid Sudoku

    Determine if a Sudoku is valid, according to: Sudoku Puzz...

  • 36. Valid Sudoku

    问题描述 Determine if a Sudoku is valid, according to: Sudoku...

  • 36. Valid Sudoku

    题目链接 https://leetcode.com/problems/valid-sudoku/ 解题思路 直接看...

网友评论

      本文标题:36. Valid Sudoku

      本文链接:https://www.haomeiwen.com/subject/kezgextx.html