#include <set>
#include <algorithm>
#include <string>
#include <string.h>
using namespace std;
class Solution
{
public:
bool isValidSudoku(vector<vector<char>>& board)
{
for(int i = 0; i < 9; i++)
{
set<char> record;
for(int j = 0; j < 9; j++)
{
if(isdigit(board[i][j]))
{
if(record.find(board[i][j])==record.end())
{
record.insert(board[i][j]);
}
else
{
return false;
}
}
}
}
for( int j = 0; j < 9; j++)
{
set<char> record;
for( int i = 0; i < 9; i++)
{
if(isdigit(board[i][j]))
{
if(record.find(board[i][j])==record.end())
{
record.insert(board[i][j]);
}
else
{
return false;
}
}
}
}
for( int i = 0; i < 9; i+=3)
{
for( int j = 0; j < 9; j+=3)
{
set<char> record;
for( int p = 0; p < 3; p++)
for(int q = 0; q < 3; q++)
{
if(isdigit(board[i+p][j+q]))
{
if(record.find(board[i+p][j+q])==record.end())
{
record.insert(board[i+p][j+q]);
}
else
{
return false;
}
}
}
}
}
return true;
}
};
有效的数独
最新推荐文章于 2024-06-11 02:24:07 发布