Cappelli tricolori

axpgn
Tu e tuoi sei amici matematici avete un cappello in testa.
Ognuno può vedere i cappelli degli altri ma non il proprio.
Ci sono nove cappelli in totale, tre rossi, tre gialli e tre verdi ma due sono nascosti.
I vostri amici iniziano a fare le seguenti affermazioni, in sequenza:

Primo: "Non so quale sia il colore del mio cappello"
Secondo: "Anch'io non so quale sia il colore del mio cappello"
Terzo: "Anch'io non so quale sia il colore del mio cappello"
Quarto: "Io so che il mio cappello è rosso"
Quinto: "Ancora non so quale sia il colore del mio cappello"
Sesto: "Io so che il mio cappello è giallo"

Siete in grado di determinare il colore del vostro cappello?



Cordialmente, Alex

Risposte
utente__medio11
"axpgn":
il fatto è che la dimostrazione della mia soluzione "smonta" la tua soluzione e quindi una delle due è sbagliata ... e siccome la mia è giusta ... :-D

Non escludo che possa aver sbagliato, anche se per me il ragionamento fila.
In ogni caso la tua soluzione smonterebbe la mia perché la tua è diversa e sei sicuro che la soluzione sia unica?


"axpgn":
Non mi ci trovo, mi sembra troppo generale e non specifica al caso in esame.

Comunque il problema non è quello (se io non capisco, è un problema mio)

Ma nello specifico cosa non avresti capito e cosa non funzionerebbe nel mio ragionamento?


@Quinzio e agli altri, che ne pensate, per voi ha senso quello che ho scritto?


axpgn
Ecco la mia ...




Cordialmente, Alex

Quinzio

Quinzio

Quinzio

axpgn
Quando ho tempo spiego perché il quarto è certo che il suo sia rosso ... ma mi serve tempo perché la spiegazione è lunga, molto più della soluzione :lol: :lol:

Quinzio

axpgn
Eccomi ...



FINE PRIMA PARTE ... auff

"axpgn":
Ecco la mia ...




Cordialmente, Alex

:evil: mi si è cancellato il messaggio quando ho cliccato l'anteprima....

@axpgn
Accetti la mia soluzione?

"Quinzio":
Vedi che non funziona ? E adesso capiamo perche'... il problema e' sempre l'affermazione del quarto.


Ho editato lo spoiler

@Quinzo invece funziona quella sequenza ecco perché

axpgn
SECONDA PARTE



Volendo c'è anche il resto ... :D


Cordialmente, Alex

axpgn
"3m0o":
:evil: mi si è cancellato il messaggio quando ho cliccato l'anteprima....


Sempre partire da una bozza e copiarla :wink: :D


"3m0o":
Accetti la mia soluzione?

Beh, come sempre con i tuoi messaggi mi perdo prima di arrivare in fondo :lol: :lol:
Comunque, sì, mi pare che funzioni (per quel che posso dire io :D )
[ot]Non puoi fare a meno di Ramsey, Van Der Waerden e compagnia ... :-D
Ti sei "specializzato" in quello poi o vai per altre strade?[/ot]

utente__medio11
Visto che la mia spiegazione è molto più semplice e breve delle altre, qualcuno potrebbe dirmi se è sbagliata e perché?

La riporto per comodità:
"utente__medio":
Credo di esserci arrivato.

"utente__medio":
[quote="axpgn"]Non mi è chiara la tua dimostrazione, non la capisco.

[/quote]


EDIT:
"axpgn":
il fatto è che la dimostrazione della mia soluzione "smonta" la tua soluzione e quindi una delle due è sbagliata ... e siccome la mia è giusta ... :-D

Queste per esempio perché non vanno bene?
GVRRVGV
GRVRVGV
RGVRVGV
RVGRVGV
VGRRVGV
VRGRVGV

Quinzio
"axpgn":
SECONDA PARTE



Volendo c'è anche il resto ... :D


Cordialmente, Alex



Ti ringrazio per la risposta dettagliata.
Con un attimo di pazienza e tempo la guardo con calma.

Il mio "problema" e' che il quinto conosce il suo colore, quindi e' sbagliato che dica "Non lo so".
Il mio problema e' tutto qui.

Che ci sia una soluzione mi va bene. Quello che contesto e' il problema e' impostato male.
Se il quinto dice "Non lo so", le condizioni devono essere tali che veramente non sa il suo colore, altrimenti lo deve dire.

reda99
A questo punto mi pare inutile scrivere la mia ricostruzione del ragionamento, anche perché e quasi identica a quella di "axpgn".
Voglio ricordare che questo tipo di enigmi si trovavano e forse ancora si trovano come esempi nei libri dedicati al linguaggio di programmazione PROLOG.
Il fatto è che negli anni '80 si sottolineava la necessità di "pensarci su" prima di scrivere il codice, questo perché l'esplosione combinatoria rendeva i tempi di esecuzione biblici.
Ora credo che si possa tranquillamente usare il metodo detto: genera e filtra, ovvero provare tutte le combinazioni ed eliminare quelle che non rispettano i vincoli.
Come ultima cosa posso dire che esistono delle apposite librerie CLP(FD) che semplificano di molto la soluzione di questo tipo di problemi.

axpgn
@utente_medio

Quinzio
"reda99":
A questo punto mi pare inutile scrivere la mia ricostruzione del ragionamento, anche perché e quasi identica a quella di "axpgn".
Voglio ricordare che questo tipo di enigmi si trovavano e forse ancora si trovano come esempi nei libri dedicati al linguaggio di programmazione PROLOG.
Il fatto è che negli anni '80 si sottolineava la necessità di "pensarci su" prima di scrivere il codice, questo perché l'esplosione combinatoria rendeva i tempi di esecuzione biblici.
Ora credo che si possa tranquillamente usare il metodo detto: genera e filtra, ovvero provare tutte le combinazioni ed eliminare quelle che non rispettano i vincoli.
Come ultima cosa posso dire che esistono delle apposite librerie CLP(FD) che semplificano di molto la soluzione di questo tipo di problemi.


Benissimo, ma in questo caso i vincoli quali sono ?
A me non sembrano affatto banali da formalizzare.
Cioe', con il metodo genera e filtra, quali sono i filtri ?

reda99
Quando ho visto questo problema mi sono ricordato di https://link.springer.com/chapter/10.1007/978-3-642-83213-0_7 questo esempio.

Come è possibile vedere il codice è scritto quasi in linguaggio naturale, ma come ho detto ora si possono usare delle librerie preconfezionate.

Non ho disponibile qualche cosa per il problema in questione, ma ho pronto del codice che risolve il zebra puzzle.

Se interessa posso provare a rendere disponibile il codice, ma cercando on-line trovi numerosissime implementazioni.

axpgn
Purtroppo non è possibile vedere :D

Per "zebra puzzle" intendi quello di Einstein?

reda99
Dal mio lato se "scrollo" verso il basso riesco a vedere le pagine del libro con il codice...

Si è conosciuto con quel nome, ma in realtà penso sia stato pubblicato su di un giornale, Einstein non dovrebbe avere niente a che fare.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.