Väike Programmeerimise väljakutse (Erikujulised sudokud)

Read by 91 users

Mask 2012-04-28T06:47:11+03:00
966666667 284319675
999667777 361258794
999997777 458973162
555111888 927586413
551518188 139647258
555111888 845731926
333344444 793862541
333322444 612495387
322222224 576124839
Alljärgnev sudoku on sellepärast eriline, et numbrid asuvad numbrite sees ehk (numbrikujulistes lahtrites), mis tuleb siis esile, kui numbriväljad on tumedama joonega piiritletud. Iga numberiväli on põhimõtteliselt oma nägu (niipalju kui võimalik). Arvestades sellega, et nad on paigutatud ühte ruudu kujulisse lahendusse, ilma sobitus, lisaväljata.
2,2,7,7,7,7,7,7,1 1,2,7,3,5,6,4,9,8
2,2,2,8,7,8,7,1,1 3,4,5,6,2,7,8,1,9
2,2,2,5,8,7,1,1,1 8,7,6,4,9,1,5,2,3
2,9,9,8,5,8,5,5,1 9,3,2,5,8,4,1,6,7
9,9,9,9,8,5,5,5,1 6,8,1,7,3,9,2,5,4
6,6,9,8,5,8,5,3,1 5,1,9,8,7,2,3,4,6
6,9,9,4,8,4,3,3,3 7,5,4,9,1,8,6,3,2
6,6,6,4,4,4,4,3,3 4,9,3,2,6,5,7,8,1
6,6,6,4,4,4,3,3,3 2,6,8,1,4,3,9,7,5

nt. 66
Kuus 6 Seitse 7777
666 7
666 7
riksman 2012-04-28T10:51:52+03:00
Kas ma sain üigesti aru, et hetkel on teil küll miski algoritm olemas, aga natukene aeglane?
Mask 2012-04-29T04:34:34+03:00
6 6 8 8 8 8 8 8 8,, 8126a5479
6 6 2 2 2 8 2 3 8,, ccoooxozx
6 6 6 6 2 2 2 3 3,, a53768291
6 5 5 1 2 2 1 3 3,, 23zxccx65
5 5 1 1 1 1 1 3 3,, 685139347
5 5 1 7 7 1 3 3 4,, ooxccxzcr
5 5 7 7 7 4 4 4 4,, 52143798a
9 5 7 9 7 7 7 4 4,, xzoxooo14
9 9 9 9 9 9 9 4 4,, 7492a6153

Põhjalik süvenemine ja hinnang sudoku lahendusse.:)
Kellele sudokud ei meeldi siis on alljärgnev jutt väga igav.
Kuid see aitab ehk teha, erikujulisi sudokusid.

Esimesena pakutud sudoku lahendus( muutmisetta võimatu).Tähtedega tähistatud raskete kohtade tõttu. Keskmine ühtede ala halvab keskohas numbrite asendamis võimalused ja äärtes kaks eelviimast väga rasete võimalustega read kindlustavad ebaõnnestumise. Kuigi äärmised read leevendavad ja on kerged jääb edukas lahendus siiski 3 vea kaugusele. Põhimõtteliselt saab teades selliste raskete kohtade kohta, hinnata, kas lahendus on reaalne. Ehk siis 12 x ja z olemasolu antud näites, ei lubanud lahenduseni jõuda. Mis on ka loogiline, sest lahendus sõltub paindlikest võimalustest ja kui on 9 numbrilises süsteemis 9 numbrit Paikselt kinni siis painlikud võimalused puuduvad, sest neile omavad mõju veel lisaks kolmest suunast mõjuvad seosed. X ja z annavad ühes suunas ühe võimaluse. C annavad kahekordseid ja o kolmekordseid liigutamisvõimalusi. Kümmet X ja z vältides on väga omapärase kujuga sudokud võimalikud. Kõige parema asukohaga on a tähega tähistatud, mis omab ühes või mitmes suunas palju võimalusi. Kõige kergema lahenduse eelisega on ühes koos ja T tähelised kujundid. Raskemad aga üksikute, väljaulatuvate osadega kujundid.
MeikopVint.ee founder 2012-05-10T22:15:50+03:00
Jõudsime Tiiduga ise lahenduseni.

Tulemused (genereerisime igat sudokut 55-st 100 korda):
0) Maksimaalne aeg: 141 ms, keskmine aeg: 9 ms
1) Maksimaalne aeg: 250 ms, keskmine aeg: 14 ms
2) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
3) Maksimaalne aeg: 31 ms, keskmine aeg: 6 ms
4) Maksimaalne aeg: 32 ms, keskmine aeg: 7 ms
5) Maksimaalne aeg: 2515 ms, keskmine aeg: 49 ms
6) Maksimaalne aeg: 296 ms, keskmine aeg: 15 ms
7) Maksimaalne aeg: 47 ms, keskmine aeg: 7 ms
8) Maksimaalne aeg: 47 ms, keskmine aeg: 10 ms
9) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
10) Maksimaalne aeg: 16 ms, keskmine aeg: 5 ms
11) Maksimaalne aeg: 250 ms, keskmine aeg: 28 ms
12) Maksimaalne aeg: 453 ms, keskmine aeg: 16 ms
13) Maksimaalne aeg: 79 ms, keskmine aeg: 8 ms
14) Maksimaalne aeg: 94 ms, keskmine aeg: 12 ms
15) Maksimaalne aeg: 219 ms, keskmine aeg: 8 ms
16) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
17) Maksimaalne aeg: 516 ms, keskmine aeg: 20 ms
18) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
19) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
20) Maksimaalne aeg: 47 ms, keskmine aeg: 6 ms
21) Maksimaalne aeg: 32 ms, keskmine aeg: 7 ms
22) Maksimaalne aeg: 109 ms, keskmine aeg: 13 ms
23) Maksimaalne aeg: 1282 ms, keskmine aeg: 47 ms
24) Maksimaalne aeg: 94 ms, keskmine aeg: 11 ms
25) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
26) Maksimaalne aeg: 32 ms, keskmine aeg: 10 ms
27) Maksimaalne aeg: 63 ms, keskmine aeg: 8 ms
28) Maksimaalne aeg: 16 ms, keskmine aeg: 5 ms
29) Maksimaalne aeg: 32 ms, keskmine aeg: 5 ms
30) Maksimaalne aeg: 203 ms, keskmine aeg: 21 ms
31) Maksimaalne aeg: 485 ms, keskmine aeg: 16 ms
32) Maksimaalne aeg: 31 ms, keskmine aeg: 10 ms
33) Maksimaalne aeg: 484 ms, keskmine aeg: 25 ms
34) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
35) Maksimaalne aeg: 219 ms, keskmine aeg: 17 ms
36) Maksimaalne aeg: 78 ms, keskmine aeg: 9 ms
37) Maksimaalne aeg: 1157 ms, keskmine aeg: 38 ms
38) Maksimaalne aeg: 1281 ms, keskmine aeg: 22 ms
39) Maksimaalne aeg: 16 ms, keskmine aeg: 7 ms
40) Maksimaalne aeg: 625 ms, keskmine aeg: 21 ms
41) Maksimaalne aeg: 953 ms, keskmine aeg: 27 ms
42) Maksimaalne aeg: 172 ms, keskmine aeg: 11 ms
43) Maksimaalne aeg: 16 ms, keskmine aeg: 5 ms
44) Maksimaalne aeg: 32 ms, keskmine aeg: 7 ms
45) Maksimaalne aeg: 63 ms, keskmine aeg: 8 ms
46) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
47) Maksimaalne aeg: 32 ms, keskmine aeg: 10 ms
48) Maksimaalne aeg: 281 ms, keskmine aeg: 18 ms
49) Maksimaalne aeg: 32 ms, keskmine aeg: 6 ms
50) Maksimaalne aeg: 93 ms, keskmine aeg: 11 ms
51) Maksimaalne aeg: 3266 ms, keskmine aeg: 517 ms
52) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
53) Maksimaalne aeg: 16 ms, keskmine aeg: 6 ms
54) Maksimaalne aeg: 32 ms, keskmine aeg: 7 ms
55) Maksimaalne aeg: 62 ms, keskmine aeg: 15 ms

Selleks kulus 15h programmeerimist ja katsetamist.

51. sudokuga mässasin pool tundi aga kiiremaks ei saanud. Üks võimalus on see välja visata või vaatame kui kiirsti serveris genereerimine töötab (toodud ajad on minu suvalise läpaka peal saadud).
kraska 2012-05-11T12:10:31+03:00
Huvitav on see, et ainult 15 tundi kulus aega koodi kirjutamiseks, mida on raske uskuda.
TiiT 2012-05-11T14:56:50+03:00
Eks ajakulu sõltub kahest asjast: ülesande keerukusest ning programmeerija tasemest.
MeikopVint.ee founder 2012-05-11T16:09:28+03:00
Võrdluseks: Ma kirjutasin terve Bismarcki mängu 15h-ga valmis. Erikujulised sudokud võtavad u. 3 korda rohkem aega

Post reply

This functionality is only for verified or VIP users