Messaggio
da EvaristeG » 16 ago 2007, 15:05
A parte che nel problema classico i nani sono in fila e parlano uno per volta, provo a dare una soluzione buffa.
I nani si beneordinano prima di entrare nella stanza.
Il Primo si mette contro una parete; il Secondo, se il Primo ha un cappello nero, gli si mette dietro, sennò anche lui contro una parete. E così via, il Terzo si dispone secondo il colore del cappello del Secondo. In generale, se il nano $ \alpha $ trova una fila che comincia dal nano $ \beta $ e contiene tutti quelli tra se stesso e $ \beta $ e non vi compare un cappello bianco (che, se compare, sta all'ultimo posto), allora vi si aggiunge.
Questo assicura che ogni fila ha un minimo (perchè i nani erano bene ordinati) e ha un massimo, a meno che non sia l'ultima fila, eventualmente (cioè contenga tutti i nani da un certo $ \gamma $ in poi).
Ogni fila ha un massimo in quanto, se c'è una fila che parte dal nano $ \alpha $ e non ha massimo (ed esiste però un nano $ \beta $ maggiore di ogni altro nano della fila), allora ogni nano nella fila ha un cappello nero (se uno ce l'ha bianco, lì termina la fila e lui è il massimo), ma allora alla fila deve appartenere anche il minimo nano tra quelli maggiori a tutti gli elementi della fila, che dunque è un massimo per la fila.
Dopo essersi disposti in questo modo, ogni nano controlla: se non ha nessuno dietro (nessun successore nella propria fila) dice "Bianco", altrimenti dice "Nero".
L'unico che può morire in questo modo è l'eventuale massimo del buon ordinamento scelto dai nani, che però possono evitare anche questa perdita, scegliendo il primo ordinale che abbia la loro cardinalità.
Ovviamente questa soluzione non sarà quella che pensavate voi, giusto?