Commit 72d6f20e authored by Boris Mühmer's avatar Boris Mühmer
Browse files

added some board layout variants and the puzze by wikipedia with its solution

parent 9e2fbd17
Loading
Loading
Loading
Loading
+81 −0
Original line number Diff line number Diff line
@@ -5,3 +5,84 @@ import "testing"
func TestSudokuBoardTerminalDummy(t *testing.T) {
	t.Skip("just a dummy")
}

const (
	chars    = " ─ │ ┌ ┐ └ ┘ ├ ┤ ┬ ┴ ┼ ═ ║ ╒ ╓ ╔ ╕ ╖ ╗ ╘ ╙ ╚ ╛ ╜ ╝ ╞ ╟ ╠ ╡ ╢ ╣ ╤ ╥ ╦ ╧ ╨ ╩ ╪ ╫ ╬ "
	boardOut = `
	┌───┬───┬───╥───┬───┬───╥───┬───┬───┐
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	├───┼───┼───╫───┼───┼───╫───┼───┼───┼
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	├───┼───┼───╫───┼───┼───╫───┼───┼───┼
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	╞═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╡
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	├───┼───┼───╫───┼───┼───╫───┼───┼───┼
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	├───┼───┼───╫───┼───┼───╫───┼───┼───┼
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	╞═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╡
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	├───┼───┼───╫───┼───┼───╫───┼───┼───┼
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	├───┼───┼───╫───┼───┼───╫───┼───┼───┼
	│ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │
	└───┴───┴───╨───┴───┴───╨───┴───┴───┘
	`
	boardOut2 = `
	┌───────┬───────┬───────╥───────┬───────┬───────╥───────┬───────┬───────┐
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	╞═══════╪═══════╪═══════╬═══════╪═══════╪═══════╬═══════╪═══════╪═══════╡
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	╞═══════╪═══════╪═══════╬═══════╪═══════╪═══════╬═══════╪═══════╪═══════╡
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼
	│ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │
	| 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 |
	| 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 |
	└───────┴───────┴───────╨───────┴───────┴───────╨───────┴───────┴───────┘
	`
	problem = `
	|53  7    |
	|6  195   |
	| 98    6 |
	|8   6   3|
	|4  8 3  1|
	|7   2   6|
	| 6    28 |
	|   419  5|
	|    8  79|
	`
	problemCompact  = "53  7    6  195    98    6 8   6   34  8 3  17   2   6 6    28    419  5    8  79"
	solutionCompact = "534678912672195348198342567859761423426853791713924856961537284287419635345286179"
)

func TestEmptyBoard(t *testing.T) {

}