Formula matematica dietro al seguente indovinello
Ciao a tutti.
Sto cercando di documentarmi invano. Devo tradurre in un linguaggio informatico (che restituisce le corrette soluzioni a fronte di input che variano) un indovinello che ho gia' sentito tante volte in modi differenti. Dal mio punto di vista sto cercando se esiste una regola matematica che "modellizzi" tali tipi di indovinelli.
Riporto l'indovinello:
c'e' una festa in maschera e sono state invitate alcune persone (A, B, C, D, E ed F). La presenza di queste persone e' legata alla presenza di uno o piu' persone. L'indovinello chiede chi deve partecipare per garantire la presenza di tutti gli altri partecipanti.
I dati di input e le risposte (cioe' chi deve essere invitato affinche' gli altri partecipano) sono:
Dati di input #1
1. B e C partecipano se A partecipa
2. A e D partecipano se C partecipa
3. A, B, e C partecipano se E partecipa
4. C e D partecipano se F partecipa
5. B, E, e F partecipano se C e D entrambi partecipano
6. D partecipa se A e B entrambi partecipano
Risposta (E' sufficiente che partecipi)
a. A
b. C
c. E
d. F
Dati di input #2
1. C partecipa se A e B entrambi partecipano
2. F partecipa se D e E entrambi partecipano
Risposta (E' sufficiente che partecipi)
a. A, B, D, e E
Dati di input #3
1. C partecipa se A e B entrambi partecipano
2. F partecipa se D e E entrambi partecipano
3. C e F partecipano se A, B, D e E partecipano
Risposta (E' sufficiente che partecipi)
a. A, B, D, e E
Dati di input #4
1. B partecipa se A partecipa
2. C partecipa se B partecipa
3. C partecipa se A partecipa
4. E partecipa se D partecipa
5. F partecipa se E partecipa
6. F partecipa se D partecipa
Risposta (E' sufficiente che partecipi)
a. A e D
Dati di input #5
1. B partecipa se A partecipa
2. C partecipa se B partecipa
3. C partecipa se A partecipa
4. E partecipa se D partecipa
5. F partecipa se E partecipa
6. F partecipa se D partecipa
7. C e F partecipano se A, B, D, e E partecipano
Risposta (E' sufficiente che partecipi)
a. A e D
Dati di input #6
1. B partecipa se A partecipa
2. C partecipa se B partecipa
3. C partecipa se A partecipa
4. E partecipa se D partecipa
5. F partecipa se E partecipa
6. F partecipa se D partecipa
7. C partecipa se B partecipa
8. A partecipa se C partecipa
9. A partecipa se B partecipa
10. F partecipa se E partecipa
11. D partecipa se F partecipa
12. D partecipa se E partecipa
Risposta (E' sufficiente che partecipi)
a. A e D
b. A e E
c. A e F
d. B e D
e. B e E
f. B e F
g. C e D
h. C e E
i. C e F
Dati di input #7
1. A partecipa se B, C, e D partecipano
2. A partecipa se C, D, e E partecipano
3. A partecipa se D, E, e F partecipano
Risposta (E' sufficiente che partecipi)
a. B, C, D, E, e F
Dati di input #8
1. B, C, D, E, e F partecipano se A partecipa
2. A partecipa se B, C, D, E, e F partecipano
Risposta (E' sufficiente che partecipi)
a. A
b. B, C, D, E, e F
Grazie dell'aiuto
Sto cercando di documentarmi invano. Devo tradurre in un linguaggio informatico (che restituisce le corrette soluzioni a fronte di input che variano) un indovinello che ho gia' sentito tante volte in modi differenti. Dal mio punto di vista sto cercando se esiste una regola matematica che "modellizzi" tali tipi di indovinelli.
Riporto l'indovinello:
c'e' una festa in maschera e sono state invitate alcune persone (A, B, C, D, E ed F). La presenza di queste persone e' legata alla presenza di uno o piu' persone. L'indovinello chiede chi deve partecipare per garantire la presenza di tutti gli altri partecipanti.
I dati di input e le risposte (cioe' chi deve essere invitato affinche' gli altri partecipano) sono:
Dati di input #1
1. B e C partecipano se A partecipa
2. A e D partecipano se C partecipa
3. A, B, e C partecipano se E partecipa
4. C e D partecipano se F partecipa
5. B, E, e F partecipano se C e D entrambi partecipano
6. D partecipa se A e B entrambi partecipano
Risposta (E' sufficiente che partecipi)
a. A
b. C
c. E
d. F
Dati di input #2
1. C partecipa se A e B entrambi partecipano
2. F partecipa se D e E entrambi partecipano
Risposta (E' sufficiente che partecipi)
a. A, B, D, e E
Dati di input #3
1. C partecipa se A e B entrambi partecipano
2. F partecipa se D e E entrambi partecipano
3. C e F partecipano se A, B, D e E partecipano
Risposta (E' sufficiente che partecipi)
a. A, B, D, e E
Dati di input #4
1. B partecipa se A partecipa
2. C partecipa se B partecipa
3. C partecipa se A partecipa
4. E partecipa se D partecipa
5. F partecipa se E partecipa
6. F partecipa se D partecipa
Risposta (E' sufficiente che partecipi)
a. A e D
Dati di input #5
1. B partecipa se A partecipa
2. C partecipa se B partecipa
3. C partecipa se A partecipa
4. E partecipa se D partecipa
5. F partecipa se E partecipa
6. F partecipa se D partecipa
7. C e F partecipano se A, B, D, e E partecipano
Risposta (E' sufficiente che partecipi)
a. A e D
Dati di input #6
1. B partecipa se A partecipa
2. C partecipa se B partecipa
3. C partecipa se A partecipa
4. E partecipa se D partecipa
5. F partecipa se E partecipa
6. F partecipa se D partecipa
7. C partecipa se B partecipa
8. A partecipa se C partecipa
9. A partecipa se B partecipa
10. F partecipa se E partecipa
11. D partecipa se F partecipa
12. D partecipa se E partecipa
Risposta (E' sufficiente che partecipi)
a. A e D
b. A e E
c. A e F
d. B e D
e. B e E
f. B e F
g. C e D
h. C e E
i. C e F
Dati di input #7
1. A partecipa se B, C, e D partecipano
2. A partecipa se C, D, e E partecipano
3. A partecipa se D, E, e F partecipano
Risposta (E' sufficiente che partecipi)
a. B, C, D, E, e F
Dati di input #8
1. B, C, D, E, e F partecipano se A partecipa
2. A partecipa se B, C, D, E, e F partecipano
Risposta (E' sufficiente che partecipi)
a. A
b. B, C, D, E, e F
Grazie dell'aiuto
Risposte
Banalmente, per bassi numeri di partecipanti, puoi tentare di destreggiarti in un grafo.
Poni che.A partecipa e poi analizzi tutti i vincoli.
Se riesci a risolvere tutto, bene. Altrimenti se ti ritrovi a una biforcazione scegli che la tale persona partecipa. Ancora le uscite possono essere: soluzione (ok) biforcazione (scegli) contraddizione. Se c'è contraddizione torna all'ultima biforcazione e cambia scelta. Ovviamente sarà necessario creare un'apposita struttura dati per ricordare le scelte eseguite e una rappresentazione di tipo matriciale dei vincoli. Auguri!
Poni che.A partecipa e poi analizzi tutti i vincoli.
Se riesci a risolvere tutto, bene. Altrimenti se ti ritrovi a una biforcazione scegli che la tale persona partecipa. Ancora le uscite possono essere: soluzione (ok) biforcazione (scegli) contraddizione. Se c'è contraddizione torna all'ultima biforcazione e cambia scelta. Ovviamente sarà necessario creare un'apposita struttura dati per ricordare le scelte eseguite e una rappresentazione di tipo matriciale dei vincoli. Auguri!