first commit
This commit is contained in:
parent
c38f48b727
commit
5e924b2237
2 changed files with 78 additions and 59 deletions
|
@ -4,70 +4,16 @@ let board = [
|
|||
[".", "9", "8", ".", ".", ".", ".", "6", "."],
|
||||
["8", ".", ".", ".", "6", ".", ".", ".", "3"],
|
||||
["4", ".", ".", "8", ".", "3", ".", ".", "1"],
|
||||
["7", ".", ".", ".", "2", ".", ".", ".", "6"],
|
||||
["7", "a", ".", ".", "2", ".", ".", ".", "6"],
|
||||
[".", "6", ".", ".", ".", ".", "2", "8", "."],
|
||||
[".", ".", ".", "4", "1", "9", ".", ".", "5"],
|
||||
[".", ".", ".", ".", "8", ".", ".", "7", "9"],
|
||||
];
|
||||
|
||||
function isValidRow(board, row) {
|
||||
let seen = new Set();
|
||||
for (let i = 0; i < 9; i++) {
|
||||
let num = board[row][i];
|
||||
if (num !== 0 && seen.has(num)) {
|
||||
return false;
|
||||
}
|
||||
seen.add(num);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
function isValidRow(board, row) {}
|
||||
|
||||
function isValidColumn(board, col) {
|
||||
let seen = new Set();
|
||||
for (let i = 0; i < 9; i++) {
|
||||
let num = board[i][col];
|
||||
if (num !== 0 && seen.has(num)) {
|
||||
return false;
|
||||
}
|
||||
seen.add(num);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
function isValidColumn(board, col) {}
|
||||
|
||||
function isValidSubgrid(board, startRow, startCol) {
|
||||
let seen = new Set();
|
||||
for (let row = startRow; row < startRow + 3; row++) {
|
||||
for (let col = startCol; col < startCol + 3; col++) {
|
||||
let num = board[row][col];
|
||||
if (num !== 0 && seen.has(num)) {
|
||||
return false;
|
||||
}
|
||||
seen.add(num);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
function isValidSubgrid(board, startRow, startCol) {}
|
||||
|
||||
function isValidSudoku(board) {
|
||||
result: HTMLElement = document.getElementById("result");
|
||||
|
||||
for (let i = 0; i < 9; i++) {
|
||||
if (!isValidRow(board, i) || !isValidColumn(board, i)) {
|
||||
console.log("Board is Unvalid");
|
||||
result.innerHTML = "Result: Unvalid";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for (let i = 0; i < 9; i += 3) {
|
||||
for (let j = 0; j < 9; j += 3) {
|
||||
if (!isValidSubgrid(board, i, j)) {
|
||||
console.log("Board is Unvalid");
|
||||
result.innerHTML = "Result: Unvalid";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log("Board is Valid");
|
||||
result.innerHTML = "Result: Valid";
|
||||
return true;
|
||||
}
|
||||
function isValidSudoku(board) {}
|
||||
|
|
73
JavaScript Solution/yourScript_solution.js
Normal file
73
JavaScript Solution/yourScript_solution.js
Normal file
|
@ -0,0 +1,73 @@
|
|||
let board = [
|
||||
["5", "3", ".", ".", "7", ".", ".", ".", "."],
|
||||
["6", ".", ".", "1", "9", "5", ".", ".", "."],
|
||||
[".", "9", "8", ".", ".", ".", ".", "6", "."],
|
||||
["8", ".", ".", ".", "6", ".", ".", ".", "3"],
|
||||
["4", ".", ".", "8", ".", "3", ".", ".", "1"],
|
||||
["7", "a", ".", ".", "2", ".", ".", ".", "6"],
|
||||
[".", "6", ".", ".", ".", ".", "2", "8", "."],
|
||||
[".", ".", ".", "4", "1", "9", ".", ".", "5"],
|
||||
[".", ".", ".", ".", "8", ".", ".", "7", "9"],
|
||||
];
|
||||
|
||||
function isValidRow(board, row) {
|
||||
let seen = new Set();
|
||||
for (let i = 0; i < 9; i++) {
|
||||
let num = board[row][i];
|
||||
if (num !== 0 && seen.has(num)) {
|
||||
return false;
|
||||
}
|
||||
seen.add(num);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function isValidColumn(board, col) {
|
||||
let seen = new Set();
|
||||
for (let i = 0; i < 9; i++) {
|
||||
let num = board[i][col];
|
||||
if (num !== 0 && seen.has(num)) {
|
||||
return false;
|
||||
}
|
||||
seen.add(num);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function isValidSubgrid(board, startRow, startCol) {
|
||||
let seen = new Set();
|
||||
for (let row = startRow; row < startRow + 3; row++) {
|
||||
for (let col = startCol; col < startCol + 3; col++) {
|
||||
let num = board[row][col];
|
||||
if (num !== 0 && seen.has(num)) {
|
||||
return false;
|
||||
}
|
||||
seen.add(num);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function isValidSudoku(board) {
|
||||
result: HTMLElement = document.getElementById("result");
|
||||
|
||||
for (let i = 0; i < 9; i++) {
|
||||
if (!isValidRow(board, i) || !isValidColumn(board, i)) {
|
||||
console.log("Board is Unvalid");
|
||||
result.innerHTML = "Result: Unvalid";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for (let i = 0; i < 9; i += 3) {
|
||||
for (let j = 0; j < 9; j += 3) {
|
||||
if (!isValidSubgrid(board, i, j)) {
|
||||
console.log("Board is Unvalid");
|
||||
result.innerHTML = "Result: Unvalid";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
console.log("Board is Valid");
|
||||
result.innerHTML = "Result: Valid";
|
||||
return true;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue