首页 > 其他分享 >LeetCode 36. Valid Sudoku

LeetCode 36. Valid Sudoku

时间:2022-10-18 14:02:38浏览次数:87  
标签:Sudoku return int memset tag Valid board sizeof LeetCode

​题目​

class Solution {
public:
int tag[10];
bool isValidSudoku(vector<vector<char>>& board) {

for(int i=0;i<9;i++)
{
memset(tag,0,sizeof(tag));
for(int j=0;j<9;j++)
{
if(board[i][j]=='.') continue;
int x = board[i][j]-'0';

if(tag[x]==1)
return false;

tag[x]=1;
}

memset(tag,0,sizeof(tag));
for(int j=0;j<9;j++)
{
if(board[j][i]=='.') continue;
int x = board[j][i]-'0';

if(tag[x]==1)
return false;

tag[x]=1;
}
}

memset(tag,0,sizeof(tag));

for(int p=0;p<3;p++){

for(int i=0;i<3;i++)
{
memset(tag,0,sizeof(tag));
for(int j=i*3;j<3+i*3;j++)
{
for(int k=p*3;k<3+p*3;k++)
{
if(board[j][k]=='.') continue;
int x = board[j][k]-'0';

if(tag[x]==1)
return false;

tag[x]=1;
}
}
}
}

return true;

}
};



标签:Sudoku,return,int,memset,tag,Valid,board,sizeof,LeetCode
From: https://blog.51cto.com/u_15834522/5766289

相关文章