leetcode week18

来源:互联网 发布:python3 网络爬虫书籍 编辑:程序博客网 时间:2024/05/21 15:35

Valid Sudoku

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.

class Solution {public:    bool isValidSudoku(vector<vector<char>>& board) {        int rowvalid[10] = {0};        int colvalid[9][10] = {0};        int subboardvalid[9][10] = {0};                for(int i=0;i<9;i++)        {            memset(rowvalid,0,sizeof(rowvalid));            for(int j=0;j<9;j++)            {                if(board[i][j]!='.')                {                    if(!checkValid(rowvalid,board[i][j]-'0')||!checkValid(colvalid[j],board[i][j]-'0')||!checkValid(subboardvalid[i/3*3+j/3],board[i][j]-'0'))                        return false;                }            }        }        return true;    }        bool checkValid(int vec[],int val)    {        if(vec[val]==1) return false;        vec[val] = 1;        return true;            }};