function Sudoku(board) {
if (!board.length) return false;
for (let i = 0; i < board.length; i++) {
let rArr = [];
let cArr = [];
for (let j = 0; j < board[i].length; j++) {
if (rArr.includes(board[i][j]) || cArr.includes(board[j][i])) {
return false;
}
if (board[i][j] !== '.') {
rArr.push(board[i][j]);
}
if (board[j][i] !== '.') {
cArr.push(board[j][i]);
}
if (i % 3 === 0 && j % 3 === 0) {
let tArr = [];
for (let k = 0; k < 3; k++) {
for (let l = 0; l < 3; l++) {
if (tArr.includes(board[k][l])) {
return false;
} else if (board[k][l] !== '.') {
tArr.push(board[k][l]);
}
}
}
}
}
return true;
}
}
const arr = [
['9', '3', '.', '.', '7', '.', '.', '.', '.'],
['6', '.', '.', '1', '9', '5', '.', '.', '.'],
['.', '9', '8', '.', '.', '.', '.', '6', '.'],
['8', '.', '.', '.', '6', '.', '.', '.', '3'],
['4', '.', '.', '8', '.', '3', '.', '.', '1'],
['7', '.', '.', '.', '2', '.', '.', '.', '6'],
['.', '6', '.', '.', '.', '.', '2', '8', '.'],
['.', '.', '.', '4', '1', '9', '.', '.', '5'],
['.', '.', '.', '.', '8', '.', '.', '7', '9'],
];
const res = a(arr);
console.log(res);