zoukankan      html  css  js  c++  java
  • Leetcode 数独

    1.验证数独

    class Solution {
    public:
    int hash[9];
        bool isValidSudoku(vector<vector<char> > &board) 
        {
           for(int i=0;i<9;i++)
           {
               if(isvalidRow(i,board)==false)return false;
           }
           for(int i=0;i<9;i++)
           {
               if(isvalidCol(i,board)==false)return false;
           } 
            for(int i=0;i<9;i=i+3)
           {
               for(int j=0;j<9;j=j+3)
               if(isvalidMatrix(i,j,board)==false)return false;
           } 
           return true; 
        }
        bool isvalidRow(int a,vector<vector<char> > &board)
        {
            memset(hash,0,sizeof(hash));
            for(int i=0;i<9;i++)
            {
                if(board[a][i]!='.')hash[board[a][i]-'0'-1]++;        
            }
            for(int i=0;i<9;i++)
            {
                if(hash[i]>=2)return false;
            }
            return true;
        }
        bool isvalidCol(int a,vector<vector<char> > &board)
        {
            memset(hash,0,sizeof(hash));
            for(int i=0;i<9;i++)
            {
                if(board[i][a]!='.')hash[board[i][a]-'0'-1]++;        
            }
            for(int i=0;i<9;i++)
            {
                if(hash[i]>=2)return false;
            }
            return true;
        }
        bool isvalidMatrix(int a,int b,vector<vector<char> > &board)
        {
            memset(hash,0,sizeof(hash));
            for(int i=a;i<a+3;i++)
            {
                for(int j=b;j<b+3;j++)
                {
                    if(board[i][j]!='.')hash[board[i][j]-'0'-1]++;
                }
            }
            for(int i=0;i<9;i++)
            {
                if(hash[i]>=2)return false;
            }
            return true;
        }
    };
    
  • 相关阅读:
    vue+element实现图片上传
    react----Hooks的基本使用
    js知识点大杂烩
    vue面试题(一)
    从一个字符串中找出重复次数最多的字符?
    百度搜索
    js--拖拽
    js循环嵌套,打印图形
    js--sort()排序
    闰秒调整扫盲
  • 原文地址:https://www.cnblogs.com/tgkx1054/p/3136126.html
Copyright © 2011-2022 走看看