11/04/21

La spia più intelligente (ma anche più fortunata) del mondo ****

Tre imprendibili spie, dotate di un'intelligenza e furbizia fuori dal comune, vengono catturate e, per loro, è stabilita la pena di morte. Il direttore del carcere in cui sono rinchiuse riceve, però, un messaggio dai massimi vertici istituzionali che gli ordinano di salvarne una per potere fare uno scambio con una loro spia in mano del nemico.

Il direttore D decide di mettere alla prova l'intelligenza delle spie e architetta una gara, veramente all'ultimo sangue. Chiama le tre spie, che indichiamo con A, B e C, e gli fa vedere otto francobolli, quattro verdi e quattro rossi. Poi li fa bendare perfettamente e gli incolla sulla fronte due francobolli, mentre gli ultimi due li nasconde in tasca.

A questo punto, spiega la gara: "Ognuno di voi tre può vedere i francobolli incollati sulla fronte degli altri due, ma non quelli sulla sua. Ovviamente, nessuno di voi può vedere i due francobolli che ho nascosto. Cominciando da A, passando poi a B e quindi a C, dovrete dirmi  che colore hanno i francobolli che avete sulla vostra fronte. Ognuno di voi potrà dire solo PASSO (ossia comunicare che non è ancora in grado di rispondere) oppure LO SO e dirmi che francobolli ha sulla fronte. Se qualcuno dice LO SO e poi sbaglia viene immediatamente ucciso. Il primo che dirà LO SO e indovinerà il colore dei suoi due francobolli avrà salva la vita e sarà scambiato con una nostra spia detenuta nel vostro Paese.  Avete a disposizione solo tre turni di risposta, ossia ABC ABC ABC. Se nessuno risponderà sarete uccisi tutti e tre! Vi permetto di usare carta e matita e di prendervi il tempo necessario (ma non certo più  di 15 minuti)".

Le tre spie sanno di essere molto intelligenti e mai e poi mai daranno una risposta a caso, ma solo con l'assoluta certezza di dare quella esatta.

Come aiuto FONDAMENTALE posso dirvi il risultato delle prime quattro risposte:

A         PASSO

B         PASSO

C         PASSO

A         PASSO

.....

Fermiamoci qui. Vi chiedo:

  1. Qual è la spia che si salva la vita?
  2. Qual è il ragionamento che l'ha portata ad avere la certezza della risposta?
  3. Che francobolli ha sulla sua testa

Tra parentesi... sembra che il suo nome sia Bond, James Bond!

15 commenti

  1. paolo

    Scusa Enzo ho una domanda: i francobolli sulla testa delle singole spie devono essere del medesimo colore oppure possono anche essere uno verde e uno rosso?

    Paolo

  2. caro Paolino,

    sì, sia uguali che di colore diverso...

  3. Fabrizio

    C'è una cosa che mi sembra curiosa in questa situazione. Almeno per la soluzione che ho trovato, ci può essere uno solo dei prigionieri che si salva. Anche se questo volesse fare il gesto eroico di passare al suo turno per permettere ad un altro di salvarsi, nessuno degli altri due potrebbe salvarsi dando una risposta certa. Potrebbero salvarsi solo affidandosi alla fortuna.

    Non dico la soluzione perché non ho rispettato le regole date da Enzo per ottenerla.

  4. caro Fabri,

    mi dà l'idea che tu abbia azzeccato ancora una volta. Se ti riferisci ai 15 minuti era solo una battuta per aumentare la confusione... :lol:

  5. aggiungo: sul fatto della fortuna, lo dice anche il titolo...

    e poi i 15 minuti si riferivano alla spia... e James è stato, ovviamente, rapidissimo!!!

  6. Fabrizio

    L'indicazione che non ho seguito è quello di carta e penna. La selezione dei casi possibili l'ho fatta con un programmino.

  7. va bene, va bene... James Bond ha sempre usato metodi innovativi per i suoi tempi!!! :-P

  8. Fabrizio

    Grazie al gadget fornito da Q, credo sia Bond che ancora una volta si salva.

    Ho utilizzato questa procedura.

    Per chi fosse interessato, la procedura scritta in Python è questa. I blocchi sono il codice da inserire nelle celle dell'applicazione Jupyter Notebook.

    ----
    import itertools as it
    import numpy as np
    from IPython.display import Markdown as md
    ----
    ----
    def passo(p,L):
    # Aggiorna la lista delle possibili triplette di affrancature
    # dopo il 'passo' di uno dei prigionieri

    # p:prigioniero che ha passato, può essere 'A' 'B' o 'C'
    # L: lista di triplette possibili
    # restituisce la lista delle triplette aggiornata e la lista degli scarti

    # identifica la posizione di p nelle triplette
    m={'A':0,'B':1,'C':2}[p]
    # identifica la posizione degli altri due nella tripletta
    i,j=[(m+1)%3,(m+2)%3]
    # crea la lista delle coppie di ciò che avrebbe potuto vedere p
    M=list(zip(*L)) # produce 3 liste con i 1i 2i e 3i elementi di L
    Lp=list(zip(M[i],M[j])) # accoppia gli elementi degli liste i e j
    # trova le coppie presenti nella lista
    Sp=list(set(Lp)) # set elimina automaticamente i duplicati
    # Esclude dalla lista le coppie che appaiono una sola volta tra le possibili
    # se p avesse visto una di queste coppie di 'affrancature' non avrebbe passato
    # perché sarebbe stato certo della sua 'affrancatura'
    Cp=[s for s in Sp if Lp.count(s)!=1]
    # nuova lista di triplette con i soli casi selezionati
    nuovaL=[l for l in L if ((l[i],l[j]) in Cp)]
    # lista degli scarti
    scartiL=[l for l in L if not((l[i],l[j]) in Cp)]
    return nuovaL,scartiL
    ----
    ----

    # funzioni di supporto per la formattazione della stampa
    def stampaLista(Lista):
    oL=list(zip(*([(10,11,12)]+Lista)))
    stringhe=['A','B','C',r'${\color {red} {RR}}$',r'${\color {red} R}{\color {green} V}$',
    r'${\color {green} {VV}}$']
    converti=lambda Lista:([r'$\,$'.join(list(map(lambda x :stringhe[([10,11,12]+F).index(x)],l))) for l in                 Lista])
    return ('<br>'.join(converti(oL)))
    def stampa(I,Lista,Scarti):
    return I+r'<br>$Nuova Lista$<br>'+stampaLista(L)+r'<br><i>$Scarti$<br>'+stampaLista(Scarti)

    ----
    ----
    # lista dei tre tipi 'affrancature'.
    #Parte reale numero di rossi,
    #parte immaginaria numero di verdi.
    F=[2,1+1j,2j]
    ----
    ----
    # crea lista delle possibili triplette con le 'affrancature' di A B C,
    # senza considerare il limite di 4 francobolli dello stesso tipo.
    L=list(it.product(F,repeat=3))
    # calcola il numero di rossi ed il numero di verdi in ciascuna combinazione
    N_francobolli=np.sum(L,axis=1)
    # selezione le triplette valide quelle che contengono al più 4 elementi per ciascun colore
    L=[item for n,item in enumerate(L) if N_francobolli[n].imag<=4 and N_francobolli[n].real<=4]
    I='<i>Possibili affrancature iniziali<br>'
    md(I+stampaLista(L))
    ----
    ----
    # aggiorna la lista delle possibili 'affrancature' dopo il primo passo di A
    L,scarti=passo('A',L)
    I='<i>Possibili affrancature dopo il 1° \"passo\" di A'
    md(stampa(I,L,scarti))
    ----
    ----
    # aggiorna la lista delle possibili 'affrancature' dopo il passo di B
    L,scarti=passo('B',L)
    I='<i>Possibili affrancature dopo il \"passo\" di B'
    md(stampa(I,L,scarti))
    ----
    ----
    # aggiorna la lista delle possibili 'affrancature' dopo il passo di C
    L,scarti=passo('C',L)
    I='<i>Possibili affrancature dopo il \"passo\" di C'
    md(stampa(I,L,scarti))
    ----
    ----
    # aggiorna la lista delle possibili 'affrancature' dopo il secondo passo di A
    L,scarti=passo('A',L)
    I='<i>Possibili affrancature dopo 2° \"passo\" di A'
    md(stampa(I,L,scarti))
    ----

     

  9. Il suo nome è Fabry... :-P

  10. Paolo

    Caro Enzo, ci provo anch’io.

    Alle tre domande rispondo che la spia che si salva è B e che sulla sua testa ha un francobollo Rosso e uno Verde.

    Provo ad esporre il ragionamento che ho fatto, per arrivare a questa conclusione.

    Parto dalla prima ipotesi, ossia che A, B e C abbiano tutti e tre dei francobolli dello stesso colore.

    Nella tabella elenco i ragionamenti importanti delle spie ed in giallo quando si trova la soluzione:

    A
    B
    C

    RR
    VV (se A e C sono RR lui può essere solo VV)
    RR

    VV (se B e C sono RR lui può essere solo VV)
    RR
    RR

    RR
    RR
    VV  (se A e B sono RR lui può essere solo VV)

    VV
    RR (se A e C sono VV lui può essere solo RR)
    VV

    RR (se B e C sono VV lui può essere solo RR)
    VV
    VV

    VV
    VV
    RR (se A e B sono VV lui può essere solo RR)

    Dato che la soluzione si trova al massimo entro il primo giro (ABC), questa è da scartare.

    Provo, dunque un'altra serie di combinazioni con relativa tabella:

    A
    B
    C
    A
    B

    RV
    VV
    RR
    RV (se fosse RR B avrebbe detto lo so, se fosse VV C avrebbe detto LO SO)

    VV
    RV (sa che non può essere RR altrimenti A avrebbe detto LO SO)
    RR (sa di non essere VV altrimenti B avrebbe detto LO SO)
    VV (sa di non essere RR altrimenti B avrebbe detto LO SO)
    RV (se fosse VV C avrebbe detto LO SO, RR lo ha escluso prima)

    VV
    RR 
    RV (sa che non può essere RR altrimenti A avrebbe detto LO SO,  né VV altrimenti B avrebbe detto LO SO)

    RV
    RR 
    VV
    RV (se fosse VV  B avrebbe detto lo so, se fosse RR C avrebbe detto LO SO)

    RR
    RV (sa che non può essere VV altrimenti A avrebbe detto LO SO)
    VV (sa di non essere RR altrimenti B avrebbe detto LO SO)
    RR (sa di non essere VV altrimenti B avrebbe detto LO SO)
    RV (se fosse RR C avrebbe detto LO SO, VV lo ha escluso prima)

    RR
    VV
    RV (sa che non può essere VV altrimenti A avrebbe detto LO SO,  né RR altrimenti B avrebbe detto LO SO)

    Con tali combinazioni solo 2 sono compatibili con la soluzione, ossia quelle dove B al secondo giro dice LO SO ed ha un francobollo rosso ed uno verde sulla fronte.

    Esistono però altre combinazioni, per cui è necessario proseguire con le verifiche.

    Terza possibile serie di combinazioni, riportate nella tabella sottostante:

    A
    B
    C
    A
    B

    VV
    RV (sa che non è VV)
    RV (sa che non è VV)
    VV 
    RV (non  può essere nemmeno RR, poiché C avrebbe detto LO SO dato che  C avrebbe concluso che lui non può essere RR se lo è già B, altrimenti A avrebbe detto LO SO vedendo B e C entrambi RR)

    RV(sa che non è VV)
    VV
    RV (sa che non è VV)
    RV ( non  può essere nemmeno RR, poiché C avrebbe detto LO SO dato che  C avrebbe concluso che lui non può essere RR se lo è già A, altrimenti B avrebbe detto LO SO vedendo A e C entrambi RR)

    RV (sa che non è VV)
    RV (sa che non è VV)
    VV
    RV
    RV (non  può essere nemmeno RR, poiché A al secondo giro avrebbe detto LO SO dato che  A avrebbe concluso che lui non può essere RR se lo è già B, altrimenti C avrebbe detto LO SO vedendo A e B entrambi RR)

    RR
    RV (sa che non è RR )
    RV (sa che non è RR)
    RR
    RV ( non  può essere nemmeno VV, poiché C avrebbe detto LO SO dato che  C avrebbe concluso che lui non può essere VV se lo è già B, altrimenti A avrebbe detto LO SO vedendo B e C entrambi VV)

    RV(sa che non è RR)
    RR
    RV (sa che non è RR)
    RV ( non  può essere nemmeno VV, poiché C avrebbe detto LO SO dato che  C avrebbe concluso che lui non può essere VV se lo è già A, altrimenti B avrebbe detto LO SO vedendo A e C entrambi VV)

    RV (sa che non è RR)
    RV (sa che non è RR)
    RR
    RV
    RV ( non  può essere nemmeno VV, poiché A al secondo giro avrebbe detto LO SO dato che  A avrebbe concluso che lui non può essere VV se lo è già B, altrimenti C avrebbe detto LO SO vedendo A e B entrambi VV)

    Con tali combinazioni 4 sono compatibili con la soluzione ed anche in questi casi sono quelle dove B al secondo giro dice LO SO ed ha un francobollo rosso ed uno verde sulla fronte.

    Infine manca solo l'ultima combinazione:

    A
    B
    C
    A
    B

    RV
    RV
    RV
    RV
    RV (non  può essere RR, poiché A al secondo giro avrebbe detto LO SO dato che  A avrebbe concluso che lui non può essere RR se lo è già B, altrimenti C avrebbe detto LO SO vedendo A e B entrambi RR, e per lo stesso motivo non può essere nemmeno VV, poiché A al secondo giro avrebbe detto LO SO dato che A avrebbe concluso che lui non può essere VV se lo è già B, altrimenti C avrebbe detto LO SO vedendo A e B entrambi VV

    Quindi anche con questa combinazione B al secondo giro dice LO SO ed ha un francobollo rosso ed uno verde sulla fronte.

    Ne segue che l'unica spia che si salva è B e che ha sula fronte un francobollo Roso e uno Verde!

    Spero di non aver sbagliato qualcosa.

    Paolo

    PS: confesso che ci ho messo decisamente più di 15 minuti per tentare di risolvere il quiz. :mrgreen: 

  11. Paolo

    Cavolo non ha tenuto le tabelle :evil: .... provo a inserire le 4 tabelle come immagini.

  12. M. Gabriella Galante

    Ma non posso dire subito che B poteva avere solo R N altrimenti mi si presentavano 6 possibilità

    vv rr vv

    rr vv rr

    rv rr vv  <———- 3.

    vv rr rv

    rv vv rr <———-5.

    rr vv rv

    In 3. rimangono disponibili tre rossi... quindi due vanno obbligatoriamente a D e uno a B più il residuo verde.

    Analogamente per la 5.

    Ho detto una .. . pazzesca

    Salve ... Gabriella

  13. M. Gabriella Galante

    Rileggendo noto che ho esposto malissimo... ma il concetto è  ... usando  tutte le ipotesi partire da:

    quello che NON può essere

    perché così riduco i casi

    sempre Gabriella ‍♀️

  14. Scusa Gabriella, ma continuo a non capire...

  15. M. Gabriella Galante

    Vincenzo scusami: credevo fosse possibile usare la dimostrazione per assurdo . Suppongo che  possa essere rosso rosso o verde verde  e arrivo a contraddizione.
    No non è possibile.

    Un saluto... Gabriella

Lascia un commento

*

:wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)

 

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.