zoukankan      html  css  js  c++  java
  • Valid Sudoku

    Total Accepted: 57185 Total Submissions: 199536 Difficulty: Easy

    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.

    合法的数独就是每一行每一列每一个3*3小块都不能有重复的数字

    class Solution {
    public:
        bool isValidSudoku(vector<vector<char>>& board) {
            int row[10],col[10];
            for(int i=0;i<9;i++){
                memset(row,0,sizeof(int)*10);
                memset(col,0,sizeof(int)*10);
                for(int j=0;j<9;j++){
                    if(board[i][j]!='.'){
                        if(row[board[i][j]-'0']!=0){
                            return false;
                        }
                        row[board[i][j]-'0'] = 1;    
                    }
                    
                    if(board[j][i]!='.'){
                        if(col[board[j][i]-'0']!=0){
                            return false;
                        }
                        col[board[j][i]-'0'] = 1;    
                    }
                }
            }
            for(int i=0;i<9;i+=3){
                for(int j=0;j<9;j+=3){
                    memset(row,0,sizeof(int)*10);
                    for(int a=0;a<3;a++){
                        for(int b=0;b<3;b++){
                            if(board[i+a][j+b]!='.'){
                                int digit = board[i+a][j+b]-'0';
                                if(row[digit]!=0){
                                    return false;
                                }
                                row[digit] = 1;            
                            }
                        }
                    }
                }
            }
            return true;
        }
    };
  • 相关阅读:
    命令行参数解析
    业务
    从0开始架构二
    从0开始架构读书笔记
    增加ldl
    工具论
    go的web框架的context回调的原理
    id生成器雪花算法和雪花算法的sony实现
    软件架构师应该知道的97件事(六)
    进程通信简介
  • 原文地址:https://www.cnblogs.com/zengzy/p/5051643.html
Copyright © 2011-2022 走看看