ok posto un paio di ideuzze..
Il problema che tratto ora è una generalizzazione di quello proposto; n sono i colori e m le persone.
1) il primo che parla non può sapere nulla sul proprio cappello ed è quindi impossibile una strategia che definisca tutti i cappelli.
2) ciò che il primo a parlare dice deve essere sufficente però a definire il cappello del secondo a parlare.
provo a descrivere una strategia possibile:
Siano n i colori diversi dei cappelli.
Numero gli n colori diversi da uno a n; ora ad ogni cappello è assegnato il numero del suo colore;i cappelli saranno più avanti trattati come se fossere questo numero.
sia  $  r(x_i)  $   la risposta data dall'i esima persona a parlare; inoltre per  $   i  \not = 1  $  questa risposta si presuppone corretta.
sia  $    f(x_i) $  la somma dei cappelli davanti all'i-esima persona a parlare considerata modulo n.
siano le m persone numerate secondo l'ordine di parola da  $     x_1,x_2....x_m $
se definisco  $     r(x_1)=f(x_1) $ il primo a parlare può benissimo non definire il proprio colore del cappello..daltronde per quanto detto su non esistono strategie che permettano di definire il suo cappello con certezza.
se pongo  $   r(x_2)=f(x_1)-f(x_2)  $  sempre considerando il tutto modulo n si definisce il cappello di $     x_2  $ correttamente perchè c'è solo un colore $    c_i   $ (modulo n i colori sono diversi) tale che  $    f(x_1)=f(x_2)+c_i $(mod n) .
ora si tratta solo di generalizzare 
definisco per ricorrenza la successione  $    r(x_k) $  come:
 $    r(x_1)=f(x_1)  $
 $    r(x_i)= f(x_{i-1})-f(x_i) $ (quest'ultima analogamente a prima) 
ma è facile verificare che (insomma ciò che stà davanti all'k-esimo è ciò che stà davanti al primo - le presone dal secondo fino al k-esimo incluso):
 $    f(x_{i-1})=f(x_1)- \sum_{k=2}^{i-1} r(x_k) $ 
ovvero:  
$    r(x_i)=f(x_1)- \sum_{k=2}^{i-1} r(x_k) -f(x_i) $ 
tutto ciò considerato modulo n permette di definire con certezza (almeno spero) il colore del cappello perchè per definizione i colori hanno rappresentanti diversi modulo n.
inoltre  $    f(x_i) $  si può calcolare per definizione (per l'i-esima persona) e $    f(x_1)=r(x_1 $  ) e quindi lo si conosce come daltronde tutte le risposte date prima della propria.
Questa strategia permette di definire tutti i cappelli meno il primo.
PS spero di non avere fatto troppo casino con gli indici..