我看其他比我快的都是用2D array
分成三個哈希表col row 3x3
然後就看不懂了
我好爛
哈
36. Valid Sudoku
class Solution {
public:
bool isValidSudoku(vector<vector<char>>& board) {
for(int i=0; i<9; i++){
unordered_map<char, int> mp1;
unordered_map<char, int> mp2;
for(int j=0; j<9; j++){
if(mp1.count(board[i][j])) return false;
if(mp2.count(board[j][i])) return false;
if(board[i][j]!='.') mp1[board[i][j]]=0;
if(board[j][i]!='.') mp2[board[j][i]]=0;
}
}
for(int i=0; i<9; i+=3){
for(int j=0; j<9; j+=3){
unordered_map<char, int> mp;
for(int k=i; k<i+3; k++){
for(int x=j; x<j+3; x++){
if(board[k][x]=='.') continue;
if(mp.count(board[k][x])) return false;
mp[board[k][x]]=0;
}
}
}
}
return true;
}
};