Pagina precedente | 1 2 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

[RISOLTO] Domino Puzzle

Ultimo Aggiornamento: 12/05/2024 13:31
Post: 1.383
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Veteran
EXCEL 2016 - SPREAD32
ONLINE
29/04/2024 13:17

Buongiorno Mario e a tutti,
alla luce delle tue incombenze, ed anche delle mie, mi rendo conto che questo tipo di problema porti facilmente all'abbandono, ma noi non siamo tipi da abbandono, vero ?
Forse non bisogna avere fretta, ogni tanto ci si ripensa, anche di notte.
Io ho vagato tantissimo in rete e non ho trovato uno straccio di algoritmo da imitare.
ho trovato solo riferimenti a matrici, calcolo matriciale e successione di Fibonacci, ma non saprei come applicarli
Questo è davvero un grosso problema di algoritmo, di calcoli, soprattutto di impostazione del progetto.

E allora:
scomponiamolo in pezzi piccoli
non facciamoci cogliere da pregiudizi come quello delle tessere ribaltabili e invertibili
Immaginiamo un ragionamento pulito semplice e lineare

ho 28 tessere
in un quadrato 4 X 4 ce ne metto 8 tutte diverse
somme orizzontali e verticali costantemente uguali, diagonali non interessano
isoliamo la somma 12
quante sono le possibilità di sommare 12 in una riga ?
da parte tua ho visto almeno 2 soluzioni, diverse dalla mia.

io ho fatto: for A, for B, for C, for D = 0 to 6 (combinazioni con ripetizione)
SE A + B + C + D = 12 allora contale ed elèncale
a me sono 231.
perchè a te (erano 14 e) stamani sono 228 ?
qui casca il primo asino
ma per un attimo lasciamo perdere perchè la differenza è piccola, basta scoprire perchè si crea

Poichè queste 231 possibilità sono tutte diverse tra loro, in teoria io ne devo prendere 4 alla volta e costruire quadrati.
Come ? con le combinazioni di 231 oggetti presi 4 a 4, e purtroppo si tratta di 231*230*229*228/24 = 115.584.315 possibilità
ma MENTRE eseguo questo algo DEVO eliminare le combinazioni che in OGNI COLONNA VERTICALE danno somme diverse da 12.
se tolgo la spazzatura MENTRE si presenta, certo riesco a velocizzare la routine.

A me l'algo assume questo aspetto:
for A = 1 to 231-3:for B = A + 1 to 231-2:for C = B + 1 to 231-1:for D = C + 1 to 231
le somme orizzontali non interessano perchè = 12 per definizione.
fammi le somme verticali delle 4 colonne di ogni quadrato e se sono diverse da 12 salta il quadrato
(somme verticali, qui ti voglio, ma mi vergogno ad esporre la MIA notazione algoritmica, obbrobriosa come la tua, devo ancora verificarla).
Risultato apparente 156.201 possibili quadrati

Se fosse vero io stesso direi a occhio che sembrano TROPPE per un dominuccio, e allora le faccio elencare per vedere come sono fatte, e l'esame deve essere attento (in ordine a tessere doppie e ribaltate).
non ho ancora fatto esame attento perchè mi sono intrecciato appunto con l'algo obbrobrioso.
Se accerto che va bene devo credere per FEDE che tale è la soluzione teorica pura.
Altrimenti c'è da riflettere e rivedere i percorsi logici.
(dimenticavo di dire che il mio nuovo computer corre circa 10 volte di più, sono facilitato.Esempio: quei famosi 3734 terni di tempo fa a me impiegano tempo = 0).
--------------------------
In allegato un Dominuccio semplice
--------------------------
ore 14:30
Devo segnalare che l'algoritmo che genera 156201 combinazioni è sbagliato (come sospettavo), ma l'impostazione teorica mi pare valida
[Modificato da L2018 29/04/2024 14:30]

LEO
https://t.me/LordBrum
Vota: 15MediaObject5,00347 3
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 2 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 10:40. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com