Grazie countz, visto che sviluppare in java è la mia professione non ho avuto alcun problema a predisporre "l'ambientino" java del project (cioè il set di classi, l'oggetto cella, la matrice tabella, etc..) e gira anche molto veloce il calcolo... c'è anche già predisposto il Random Number Generator che mi servirà a generare sempre lo STESSO schema per il dato giorno, in modo tale cioè da avere un "archivio" di schemi pressoché illimitato dal 1970 al 2025.. Anche l'interfaccia grafica per far giocare direttamente sul sito (invece di trascrivere su carta) sarà la parte più divertente e senza problemi.
Il problema SERIO invece è che in fase concettuale sembra una cavolata, si pensa: bsta che applico le regole base, tiro giù numeri a caso.. ahi me purtroppo NO
Originalmente inviato da
countz
dai non dovrebbe risultare troppo difficile imho
Soltanto quando fai girare l'algoritmo ti accorgi che far QUADRARE gli ultimi spazi rimasti è un DRAMMA!!! Anche cercando vie per sbloccare situazioni...
L'unico algoritmo, il più scontato (e infatti il primo pensato) funziona e anche di getto, ma genera una griglia scontatissima (ecco l'esempio più lampante):
Codice:
123|456|789
456|789|123
789|123|456
---+---+---
231|564|897
564|897|231
897|231|564
---+---+---
312|645|978
645|978|312
978|312|645
funziona ma è orrendo, come potete vedere le "triplette" si ripetono nei box 3x3 adiacenti con uno sfalzamento di 1 riga/colonna, bruttissimo!
e non corrisponde alla varietà di disposizione che si può notare negli schemi risolti che si vedono in giro, dove non ci sono mai ripetizioni così palesi.
O meglio, diciamo che è stata una sfida mia -volerlo pensare da solo-, perché in effetti su sourceforge c'è un progetto in atto in C++ (anche se proprio oggi, tentando di sbirciare i sorgenti non vedo nulla nel CVS boh, guaderò meglio)... un po' mi sono arreso a volerlo fare da solo, dunque penso cercherò quantomeno qualche dritta in giro.
Mi sparo le "ultime cartucce", cioè partire dallo schema "scontato" -che so predisporre- e magari trovare un modo di "movimentarlo" per renderlo più sciolto e meno prevedibile...