Problem 114. Check to see if a Sudoku Puzzle is Solved
Description:
Your task, should you choose to accept it, is to make a function that checks to see if a 9x9 matrix of integers represents a completed sudoku puzzle. For more information regarding sudokus, refer to the wikipedia page.
The function will return true only when it's a completed sudoku puzzle. A value of 0 refers to a blank entry.
Example:
input = [ 8 2 4 9 5 3 6 7 1 6 3 5 8 1 7 9 2 4 7 1 9 6 2 4 8 5 3 5 8 7 2 9 1 3 4 6 1 4 2 7 3 6 5 8 9 3 9 6 4 8 5 2 1 7 2 6 1 5 4 9 7 3 8 4 7 8 3 6 2 1 9 5 9 5 3 1 7 8 4 6 2 ]; answer = true;
input = [ 8 2 4 9 5 3 6 7 1 6 3 5 8 1 7 9 2 4 7 1 9 0 2 4 8 5 3 5 8 7 2 9 1 3 4 6 1 4 2 7 3 0 5 8 9 3 9 6 4 8 5 2 1 7 2 6 1 5 4 9 7 3 8 4 7 8 3 6 2 1 9 5 9 5 3 1 7 8 4 6 2 ]; answer = false;
Solution Stats
Problem Comments
-
5 Comments
Seems like my test suite wasn't robust enough, so I've bolstered it with some trickier situations
You should have added a test case with 5*ones(9) as a test matrix.
ur test suite 6 is wrong, isn't it??
@bmtran can you explain why test case #6 (toeplitz variation) is false?
In addition to each row and column needing to have 1 through 9, each 3x3 sub-region must have 1 through 9 as well.
Solution Comments
Show commentsProblem Recent Solvers321
Suggested Problems
-
Determine whether a vector is monotonically increasing
20762 Solvers
-
1762 Solvers
-
We love vectorized solutions. Problem 1 : remove the row average.
823 Solvers
-
8517 Solvers
-
309 Solvers
More from this Author56
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!