Look at the 8x8 grid below at left. In the rows and columns there are repeated numbers. Erasing 19 of them, we achieve the grid at right, that has no repeated numbers in any row, in any column.
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 5 | 7 | 1 | 2 | 5 | 4 | 4 | 3 | | | 7 | 1 | | 5 | | 4 | 3 |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 4 | 3 | 1 | 2 | 7 | 5 | 6 | 3 | | 4 | 3 | | 2 | 7 | 5 | 6 | |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 5 | 5 | 3 | 4 | 2 | 1 | 7 | 8 | | | 5 | 3 | | 2 | | 7 | 8 |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 6 | 6 | 2 | 7 | 3 | 3 | 3 | 1 | | 6 | | 2 | 7 | | 3 | | 1 |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 3 | 2 | 5 | 6 | 9 | 1 | 8 | 6 | | 3 | 2 | 5 | | 9 | 1 | 8 | 6 |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 2 | 1 | 3 | 4 | 6 | 2 | 5 | 2 | | | 1 | | 4 | 6 | | 5 | 2 |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 9 | 8 | 4 | 1 | 4 | 6 | 2 | 3 | | 9 | 8 | 4 | 1 | | 6 | 2 | |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 7 | 5 | 6 | 5 | 8 | 5 | 1 | 4 | | 7 | | 6 | 5 | 8 | | 1 | 4 |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
Do the same with this 8x8 grid, erasing the minimum number of squares.
+---+---+---+---+---+---+---+---+
| 8 | 4 | 6 | 5 | 3 | 5 | 7 | 4 |
+---+---+---+---+---+---+---+---+
| 6 | 5 | 5 | 4 | 7 | 8 | 3 | 1 |
+---+---+---+---+---+---+---+---+
| 5 | 7 | 2 | 5 | 5 | 4 | 8 | 7 |
+---+---+---+---+---+---+---+---+
| 8 | 6 | 5 | 3 | 2 | 5 | 4 | 4 |
+---+---+---+---+---+---+---+---+
| 3 | 8 | 1 | 4 | 8 | 6 | 5 | 2 |
+---+---+---+---+---+---+---+---+
| 5 | 3 | 7 | 6 | 4 | 2 | 2 | 2 |
+---+---+---+---+---+---+---+---+
| 5 | 8 | 7 | 7 | 6 | 2 | 1 | 3 |
+---+---+---+---+---+---+---+---+
| 1 | 1 | 3 | 7 | 6 | 4 | 6 | 8 |
+---+---+---+---+---+---+---+---+
I've come up with an algarithm for finding a minimal solution although I have not come up with a formal proof yet. The process is simple, start with any number, lets say 1. find all the occurances of multiple 1's in a row or column and connect them with a straight line in that row or column. You now have a nice little graph showing how each of the duplicates are interconnected. Now look for the node with the most number of connections and delete and correct the map for its absense and continue this process until no duplicates are left. After this the number 1's are fixed with minimal deletion and you can follow a similar procedure for the rest of them. Thus resulting in an overall minimal number of deletions.
|
Posted by Daniel
on 2008-08-21 00:12:55 |