Soluzione D= 20
Supponiamo che ci siano tre persone sedute una accanto all'altra al tavolo. Consideriamo due casi:
Caso 1: Tutte e tre indossano il cappello. In questo caso, la persona centrale ha due vicini che indossano il cappello. Quindi, la sua affermazione "Almeno uno dei miei due vicini non indossa il cappello" è falsa. Ma chi indossa il cappello dice sempre la verità, quindi questo caso è impossibile.
Caso 2: La persona centrale non indossa il cappello. In questo caso, la sua affermazione "Almeno uno dei miei due vicini non indossa il cappello" è vera, indipendentemente dal fatto che i suoi vicini indossino o meno il cappello. Questa situazione è quindi possibile.
Da questi due casi, possiamo concludere che non possono esserci tre persone consecutive che indossano il cappello.
Ora, consideriamo la disposizione delle 30 persone intorno al tavolo. Per massimizzare il numero di persone che indossano il cappello senza avere tre persone consecutive con il cappello, possiamo alternare due persone con il cappello e una senza.
Un possibile schema è: Cappello, Cappello, No cappello, Cappello, Cappello, No cappello, e così via.
In un gruppo di tre persone, al massimo due possono indossare il cappello. Dato che ci sono 30 persone, possiamo dividerle in 10 gruppi di tre. In ciascun gruppo di tre, al massimo due persone possono indossare il cappello.
Pertanto, il numero massimo di persone che possono indossare il cappello è 10 gruppi * 2 persone/gruppo = 20 persone.
Verifica: Se ci fossero 20 persone con il cappello disposte in questo modo (due con il cappello, una senza, ripetuto), ogni persona con il cappello avrebbe un vicino senza cappello, quindi la sua affermazione sarebbe vera. Ogni persona senza cappello avrebbe almeno un vicino senza cappello (in realtà ne avrebbe due), quindi la sua affermazione sarebbe vera (o avrebbe un vicino con il cappello e uno senza, e l'affermazione sarebbe comunque vera).
Quindi, il numero massimo di persone che possono indossare il cappello è effettivamente 20.