Schema "Pencilmark" da Clipboard
Dalla versione - v 2008 04 01 - del "Sudoku 9x9 Logic Solver & Report Builder" è presente una macro che facilita l'importazione in Excel di schemi "tipo pencilmark" proposti in formato testo.
La macro è accessibile dalla user form, attivabile dal foglio "Pencilmark Grid", che contiene tutte le funzioni di importazione schemi, gioco e aiuti al gioco del file.
Gli schemi "tipo pencilmark" contengono, oltre ai candidati inseriti fissi iniziali, anche i candidati residui nelle altre celle dai quali iniziare le valutazioni per progredire verso la soluzione: in sostanza si tratta di schemi parzialmente risolti.
Una variante molto interessante degli schemi "tipo pencilmark" è il "Sukaku" (detto anche "No-given Sudoku" - "Pencilmark Sudoku" - "Suuji Kakure") dove non ci sono candidati inseriti fissi iniziali ma solo candidati residui di cella: però anche il Sukaku, per essere valido, deve avere un'unica soluzione.
Il codice acquisisce gli appunti di Windows in una variabile "DataObject" ed estrae dal testo tutti i caratteri numerici da 1 a 9, considerandoli validi come candidati residui iniziali dello schema da risolvere.
I candidati residui singoli di cella sono pari, quindi, agli inserimenti fissi iniziali.
I separatori, tra i candidati di una cella e la successiva, sono gli spazi vuoti, che possono essere anche più di uno e in numero variabile.
Tutti gli altri caratteri sono ignorati:
Di seguito sono incollati alcuni tipi di schema in formato testo, tratti da internet, che si possono importare: potrebbero però esistere altri tipi.
Per l'importazione basta selezionare un testo che rappresenta uno schema "tipo pencilmark" (anche "Sukaku") da un qualsiasi file o pagina web, copiarlo negli appunti (con il classico "CTRL + C" o comando "Copia" da tasto destro etc.) e lanciare la macro: lo schema sarà importato nel foglio "Pencilmark Grid" del "Sudoku 9x9 Logic Solver & Report Builder".
*--------------------------------------------------------------------------------------*
| 1 7
38 | 249
289 6
| 389 2349 5
|
234568 2345689 3568 | 2459-1
*1289 7
|*1389 *12349 2489-1 |
| 2458 24589 58
| 12459 3
12458 | 6 7
12489 |
|----------------------------+----------------------------+----------------------------|
| 256 256 7
| 8 4
12 |#159
#12569 3 |
| 23468 23468 *1368
| 127 5
9 |*178
*1246 2468-1 |
| 9 2458
*158 | 127 6
3 |*1578
*1245 248-1 |
|----------------------------+----------------------------+----------------------------|
| 356 356 4
| 1569 7
15 | 2
8 169
|
| 7 3568
9 | 2456-1 *128
2458-1 |*135 *1356
6-1 |
| 568 1
2 | 3
89 58
| 4 569
7 |
*--------------------------------------------------------------------------------------*
+-------------------+---------------------+------------------+
|@1R37 6 1237 | 13478 5
1478 | 2347 2378 9 |
| 37 2359 4 | 36789
$3g9 6789 | 23567 1 $278g |
| 8 359 13579 | 134679 2
14679 | 3456 3567 @4G7R |
+-------------------+---------------------+------------------+
|@1G4R 7 $15g8 | 24G59 $19g 3
|$12g9 $28g 6 |
| 2 @3R4G 136 | 4679
8 4679 | 1379 37 5
|
| 9 358 13568 | 2567
$1g6 2567 | 1237 4 1278
|
+-------------------+---------------------+------------------+
| 6 @24R89 289 | 12589 7
12589 |@124G5 25 3 |
|@34G7 1 2379 | 23569 $36g9
2569 | 8 2567 @24R7 |
| 5 $238r 2378 | 12368 4
1268 | 1267 9 127 |
+-------------------+---------------------+------------------+
+---------------------+----------------+-----------------+
|3 7 5
|6 1 8 |9
4 2 |
|1 2 4
|(35) 9 (35) |8 7
6 |
|6 9 8
|(27) (27) 4 |3 5
1 |
+---------------------+----------------+-----------------+
|(49) (156) (2369) |8 (45) 7
|(15) (26) (349) |
|(4789) (58) (29) |1 3
6 |(57) (28) (49) |
|(478) (1568) (36) |9 (45) 2
|(157) (68) (34) |
+---------------------+----------------+-----------------+
|2 (68) (679) |(37) (678)
(39) |4 1 5 |
|5 3 (67)
|4 (67) 1 |2
9 8 |
|(89) 4 1
|(25) (28) (59) |6 3 7
|
+---------------------+----------------+-----------------+
14 2 3 ||
7 5 9 ||
148 148 6
8 7
14 || 2 6
134 || 5 9
134
9 56 56
|| 138 138 1348 ||
7 2 134
=====================||=====================||======================
26 156 12568 || 1358
4 138 || 9
7 158
3 145 7
|| 158 9
6 || 148 1458
2
14 1459 14589 || 158
2 7 || 36
36 1458
=====================||=====================||======================
5 1369 1269 ||
4 7 138 || 12368
1368 189
67 13469 1469 || 69
138 2 || 13468 134568 145789
267 8 12469 ||
69 13 5 || 12346
1346 1479
2467
2468 247 | 678 1
9 | 348 5
38
9 4568 457 |
5678 3567 3567 | 2
48 1
1 58 3
| 58 2 4
| 6 9 7
------------------------------------------------------------------
3 24569 2459 | 457
4579 57 | 5789 1
5689
46 4569 1
| 2 34579 8
| 3579 367 3569
8 7 59
| 156 3569 1356 | 359
2 4
------------------------------------------------------------------
5 234 8
| 9 467 267
| 1 3467 36
47 39 6
| 1457 457 157 | 389
38 2
247 1 2479 |
3 8 267
| 4579 467 569
5
19#c 169 | 12
8 7
| 126#a#e 4 3
123#c 7 13#c | 9
4 6
| 5 8
12#d
126#c 8 4
| 1235 125 123
| 7 9
126#d
---------------------+-------------------------+------------------------
369 2 3679 |
34568 5679 3489 |
468#a#e 1 689
8 4
1369 | 1236 1269 1239
| 26#a#e 7 5
169 5 1679 |
12468 12679 12489 | 2468#a#e 3
2689-2
---------------------+-------------------------+------------------------
7 3 2
| 1468 16 148
| 9 5
18
19 6 8
| 7 19
5 | 3
2 4
4 19#b 5
| 128-1 3 1289-1 |
18#b 6 7
5
19 169 | 12 8
7 | 126 4 3
123 7 13 | 9
4 6 | 5
8 12
126 8 4 | 1235
125 123 | 7 9
126
------------------+------------------+------------------
369 2 3679 |34568 5679
3489 | 468 1 689
8 4 1369 | 1236 1269
1239 | 26 7 5
169 5 1679 |12468 12679 12489 | 2468
3 2689
------------------+------------------+------------------
7 3 2 | 1468
16 148 | 9 5
18
19 6 8 | 7
19 5 | 3 2
4
4 19 5 | 128
3 1289 | 18 6
7
*-----------------------------------------------------------*
| 3 1569 7 | 1459 159 48 | 689 569 2 |
| 168 2 1569 | 1359 159 38 | 689 4 7 |
| 48 459 459 | 7 2 6 | 389 359 1 |
|-------------------+-------------------+-------------------|
| 47 49 2 | 6 48 1 | 5 379 389 |
| 146 8 1569 | 345 7 34 | 169 2 69 |
| 167 156 3 | 2 58 9 | 4 167 68 |
|-------------------+-------------------+-------------------|
| 5 146 146 | 8 3 7 | 2 169 469 |
| 2 7 146 | 19 169 5 | 136 8 346 |
| 9 3 8 | 14 146 2 | 7 16 5 |
*-----------------------------------------------------------*
4 3|8|9 3|5
| 2 3|9 6 | 1
7 5|8
1|3|5|9 1|2|3|8|9 6 |
7 3|9 4 | 2|8|9 2|3|8 2|5|8
7 2|3|9
2|3 | 8 5 1 | 2|4|9 2|3|4
6
------------------------------+------------+---------------------
2
5 9 | 4
8 7 | 3
6 1
3|6 3|6|7
3|7 | 9 1 5 | 2|4|8 2|4|8
2|8
8
1|4 1|4 | 6 2
3 | 5 9
7
------------------------------+------------+---------------------
1|6 1|2|4|6
1|4 | 5 7 9 | 2|8
1|2|8 3
3|5 2|3|7
2|3|5|7 | 1 4 8 |
6 2|5 9
1|5|9 1|9
8 | 3 6 2 |
7 1|5 4
(1/4/5) (1/4/5/7)
{8} | {2} (1/4/7/9) {6} | {3} (1/4/5/9) (5/9)
{3} (1/4/7) (1/2/4/6) | {5} (1/4/7/9) (4/7) | (1/2/4/6) (1/4/9) {8}
(1/2/4/5/6) {9} (1/2/4/6) | {8} (1/4) {3} | (1/2/4/6) {7} (5/6)
{9} {6} {7} | {1} {8} {2} | {5} {3} {4}
{8} {2} {5} | {3} (4/7) (4/7) | {9} {6} {1}
(1/4) (1/4) {3} | {6} {5} {9} | {7} {8} {2}
(1/6) {8} {9} | {4} {3} {5} | (1/6) {2} {7}
{7} (4/5) (2/6) | {9} (2/6) {1} | {8} (4/5) {3}
(1/2/4/5/6) {3} (1/2/4/6) | {7} (2/6) {8} | (1/4/6) (1/4/5/9) (5/6/9)
[57] [4567] [2467]
[26] [457] [8] [9] [3] [1]
[9] [8] [2467] [1] [3] [2456] [45] [27] [45]
[3] [1] [247] [9] [457] [245] [6] [27] [8]
[4] [2] [1] [5] [6] [7] [8] [9] [3]
[6] [3] [8] [4] [1] [9] [7] [5] [2]
[57] [57] [9] [8] [2] [3] [1] [4] [6]
[2] [46] [5] [36] [9] [1] [34] [8] [7]
[1] [47] [347] [23] [8] [245] [2345] [6] [9]
[8] [9] [346] [7] [45] [2456] [2345] [1] [45]
.------------------------.------------------------.------------------------.
| 14789 12349 389 | 136789
1236 12479 | 3458 123469
3789 |
| 123469 15689 123578 | 124568 12346
12 | 45689 146
146789 |
| 46789 2368 1235789| 1234567 234
23468 | 2678 169 3679
|
:------------------------+------------------------+------------------------:
| 36789 1459 4679 | 2489
2578 13478 | 34
1358 679 |
| 25689 2356 379 | 1459
47 14679 | 246
358 58 |
| 4689 34567 134789 | 23568
23789 345679 | 1235679 678 126
|
:------------------------+------------------------+------------------------:
| 24678 346789 12369 | 135679 13459
256789 | 579 168 258
|
| 347 23579 3689 |
125679 1678 123459 | 135
1356 123458 |
| 1567 245789 123478 | 48
12679 489 | 38
789 156789 |
'------------------------'------------------------'------------------------'