|
1 | | -# 37. Sudoku Solver |
| 1 | +# 37. Sudoku Solver |
2 | 2 |
|
3 | | -Write a program to solve a Sudoku puzzle by filling the empty cells. |
| 3 | +<p>Write a program to solve a Sudoku puzzle by filling the empty cells.</p> |
4 | 4 |
|
5 | | -A sudoku solution must satisfy **all of the following rules**: |
| 5 | +<p>A sudoku solution must satisfy <strong>all of the following rules</strong>:</p> |
6 | 6 |
|
7 | | -1. Each of the digits `1-9` must occur exactly once in each row. |
8 | | -2. Each of the digits `1-9` must occur exactly once in each column. |
9 | | -3. Each of the digits `1-9` must occur exactly once in each of the 9 `3x3` sub-boxes of the grid. |
| 7 | +<ol> |
| 8 | + <li>Each of the digits <code>1-9</code> must occur exactly once in each row.</li> |
| 9 | + <li>Each of the digits <code>1-9</code> must occur exactly once in each column.</li> |
| 10 | + <li>Each of the digits <code>1-9</code> must occur exactly once in each of the 9 <code>3x3</code> sub-boxes of the grid.</li> |
| 11 | +</ol> |
10 | 12 |
|
11 | | -The `'.'` character indicates empty cells. |
| 13 | +<p>The <code>'.'</code> character indicates empty cells.</p> |
12 | 14 |
|
13 | | - |
| 15 | +<p> </p> |
| 16 | +<p><strong class="example">Example 1:</strong></p> |
| 17 | +<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/f/ff/Sudoku-by-L2G-20050714.svg/250px-Sudoku-by-L2G-20050714.svg.png" style="height:250px; width:250px" /> |
| 18 | +<pre> |
| 19 | +<strong>Input:</strong> board = [["5","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"]] |
| 20 | +<strong>Output:</strong> [["5","3","4","6","7","8","9","1","2"],["6","7","2","1","9","5","3","4","8"],["1","9","8","3","4","2","5","6","7"],["8","5","9","7","6","1","4","2","3"],["4","2","6","8","5","3","7","9","1"],["7","1","3","9","2","4","8","5","6"],["9","6","1","5","3","7","2","8","4"],["2","8","7","4","1","9","6","3","5"],["3","4","5","2","8","6","1","7","9"]] |
| 21 | +<strong>Explanation:</strong> The input board is shown above and the only valid solution is shown below: |
14 | 22 |
|
15 | | -**Example 1:** |
| 23 | +<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/31/Sudoku-by-L2G-20050714_solution.svg/250px-Sudoku-by-L2G-20050714_solution.svg.png" style="height:250px; width:250px" /> |
| 24 | +</pre> |
16 | 25 |
|
17 | | - |
| 26 | +<p> </p> |
| 27 | +<p><strong>Constraints:</strong></p> |
18 | 28 |
|
19 | | -``` |
20 | | -Input: board = [["5","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"]] |
21 | | -Output: [["5","3","4","6","7","8","9","1","2"],["6","7","2","1","9","5","3","4","8"],["1","9","8","3","4","2","5","6","7"],["8","5","9","7","6","1","4","2","3"],["4","2","6","8","5","3","7","9","1"],["7","1","3","9","2","4","8","5","6"],["9","6","1","5","3","7","2","8","4"],["2","8","7","4","1","9","6","3","5"],["3","4","5","2","8","6","1","7","9"]] |
22 | | -Explanation: The input board is shown above and the only valid solution is shown below: |
23 | | -``` |
24 | | - |
25 | | - |
26 | | - |
27 | | -**Constraints:** |
28 | | - |
29 | | -- `board.length == 9` |
30 | | -- `board[i].length == 9` |
31 | | -- `board[i][j]` is a digit or `'.'`. |
32 | | -- It is **guaranteed** that the input board has only one solution. |
| 29 | +<ul> |
| 30 | + <li><code>board.length == 9</code></li> |
| 31 | + <li><code>board[i].length == 9</code></li> |
| 32 | + <li><code>board[i][j]</code> is a digit or <code>'.'</code>.</li> |
| 33 | + <li>It is <strong>guaranteed</strong> that the input board has only one solution.</li> |
| 34 | +</ul> |
0 commit comments