Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
* QUIZ: il pasto dei filosofi cinesi
Nuovo argomento   Rispondi    Indice del forum -> Enigmi e giochi matematici
Precedente :: Successivo  
Autore Messaggio
ulisse
Dio maturo
Dio maturo


Registrato: 02/03/05 01:09
Messaggi: 1531
Residenza: Bagnone (MS)

MessaggioInviato: 01 Nov 2006 17:15    Oggetto: * QUIZ: il pasto dei filosofi cinesi Rispondi citando

Ho letto un brano che cerco di trasformare in indovinello. E' un indovinello stupido (se così non fosse l'avrebbero pubblicato già come indovinello e non come raccontino) dalla formulazione complicata ma con soluzione facile facile.
Oggi va così... beccatevelo...

Ad una convenscion di filosofi cinesi è stato predisposto un buffet composto da un tavolo rotondo apparecchiato con n piatti e n bacchette alternati tra loro in modo che ogni piatto abbia vicino a sè due bacchette (una a sinistra e una a destra).

Al centro c'è un grande piatto da portata che contiene una quantità illimitata di riso (cantonese se vi piace l'idea).

Ora, visto che nessuno, compreso un cinese, può mangiare il riso con una sola bacchetta, i filosofi cinesi si trovano di fronte ad un problema.
Il ciclo metabolico di un filosofo consiste nell'occuparsi di problemi futili (pensare e poi scrivere i risultati da pubblicare), diventare affamato e provare a mangiare, quindi mangiare e poi tornare di nuovo alle proprie attività, ad infinitum.
Quindi i filosofi della convenscion, al primo morso di fame, abbandoneranno la sala, si recheranno al buffet, sceglieranno un posto al quale sedersi e cercheranno di prendere le due bacchette ai lati per nutrirsi.
In caso ci riescano, terminato il pasto, riporranno di nuovo le bacchette ai loro posti.
Da notare la restrizione sull'uso delle bacchette: il galateo vieta di accaparrarsi le bacchette lontane dal proprio piatto.
Quindi se un filosofo si sistema tra due posti vuoti può agguantare le due bacchette e cibarsi viceversa deve prendere la bacchetta disponibile e attendere che si liberi anche la seconda (se solo uno dei posti adiacenti al suo è libero) oppure attendere che si liberino entrambe le bacchette (se nessuno dei posti adiacenti è libero).

Domande:
qual è il massimo numero di filosofi (cinesi) che possono cibarsi simultaneamente?
qual è il massimo numero di filosofi (cinesi) che possono sedersi con la certezza che prima o poi mangeranno?


L'ultima modifica di ulisse il 17 Dic 2006 12:37, modificato 1 volta
Top
Profilo Invia messaggio privato HomePage
Benny
Moderatore Hardware e Networking
Moderatore Hardware e Networking


Registrato: 28/01/06 14:35
Messaggi: 6382
Residenza: Non troppo vicino, mai troppo lontano

MessaggioInviato: 03 Nov 2006 19:22    Oggetto: Rispondi citando

Forse non l'ho capito bene, ma
Citazione:
n/2 è il numero massimo, con n pari, di filosofi che possono mangiare contemporaneamente, nell'ipotesi che tutti i poasti siano occupati, mangeranno alternati.
Se n è dispari saranno (n-1)/2. Mangeranno sempre alternati, ma gli ultimi due dovranno contendersi l'ultima bacchetta (e il galateo vieta contenziosi a tavola).

In quanto al numero massimo che può sfamarsi, direi n, se pari in due turni, se dispari, in tre turni con l'ultimo che mangia da solo.

Erro?
Top
Profilo Invia messaggio privato
ulisse
Dio maturo
Dio maturo


Registrato: 02/03/05 01:09
Messaggi: 1531
Residenza: Bagnone (MS)

MessaggioInviato: 06 Nov 2006 10:20    Oggetto: Rispondi citando

Benny ha scritto:
Erro?

Un po' si è un po' no.

Prima domanda:
Citazione:
se n è pari la risposta n/2 è ok la spiegazione pure. In questa situazione il successivo filosofo che si siede deve aspettare che si liberino 2 bacchette qualunque sia il posto che va ad occupare.
Se n è dispari la risposta (n-1)/2 è ok ma non è vero che "gli ultimi due" si contendono una bacchetta. Semplicemente i filosofi seduti saranno tutti distanziati tra loro di un posto tranne due di essi che saranno distanziati da 2 posti. Il successivo filosofo che si siede in uno di quei due posti avrà subito diponibile una bacchetta ma dovrà comunque aspettare che si liberi la seconda bacchetta.


La seconda domanda invece non chiede il massimo numero di filosofi che può sfamarsi ma il massimo numero di filosofi che può sedersi contemporaneamente senza far collassare il sistema.
Esempio che facilita mostrusamente la risoluzione:
Citazione:
se i filosofi occupano tutti i posti contemporaneamente c'è la possibilità che ognuno si ritrovi con una sola bacchetta in mano che non mollano più sino a che non hanno mangiato e quindi, restando tutti in attesa di una seconda bacchetta che non arriverà mai, nessuno mangia più...
Top
Profilo Invia messaggio privato HomePage
den
Mortale adepto
Mortale adepto


Registrato: 28/09/06 13:38
Messaggi: 30
Residenza: BG provincia

MessaggioInviato: 06 Nov 2006 13:06    Oggetto: Rispondi citando

Citazione:

Numero massimo di filosofi che possono sedersi e mangiare contemporaneamente : n/2 se pari, (n-1)/2 se dispari
Numero max che possono sedersi con la certezza che prima o poi mangeranno: n-1 (risolto senza suggerimenti Rolling Eyes )

è giusta?

Top
Profilo Invia messaggio privato
ulisse
Dio maturo
Dio maturo


Registrato: 02/03/05 01:09
Messaggi: 1531
Residenza: Bagnone (MS)

MessaggioInviato: 07 Nov 2006 10:50    Oggetto: Rispondi citando

Giusto!
A voi l'onore della spiegazione.
Top
Profilo Invia messaggio privato HomePage
Benny
Moderatore Hardware e Networking
Moderatore Hardware e Networking


Registrato: 28/01/06 14:35
Messaggi: 6382
Residenza: Non troppo vicino, mai troppo lontano

MessaggioInviato: 07 Nov 2006 20:12    Oggetto: Rispondi citando

ulisse ha scritto:
Prima domanda:
Citazione:
Se n è dispari la risposta (n-1)/2 è ok ma non è vero che "gli ultimi due" si contendono una bacchetta. Semplicemente i filosofi seduti saranno tutti distanziati tra loro di un posto tranne due di essi che saranno distanziati da 2 posti. Il successivo filosofo che si siede in uno di quei due posti avrà subito diponibile una bacchetta ma dovrà comunque aspettare che si liberi la seconda bacchetta.

Ok, è quello che intendevo io. solo che l'ho messa in maniera diversa
Citazione:
Contendersi una bacchetta significa che in due ne hanno solo una a disposizione, perciò il primo che se la accaparra potrà mangiare quando si libererà quella affianco, mentre l'altro dovrà attendere che si liberino tutte e due.


ulisse ha scritto:
La seconda domanda invece non chiede il massimo numero di filosofi che può sfamarsi ma il massimo numero di filosofi che può sedersi contemporaneamente senza far collassare il sistema.

Ho detto che non l'avevo capito bene...
Citazione:
n-1 è la soluzione alla seconda domanda, perché in questo caso, essendoci un posto libero, sicuramente almeno un filosofo avrà a disposizione due bacchette e, anche nel caso in cui tutti gli altri ne abbiano una a testa, prima o poi il fortunello le lascia e a catena mangeranno tutti gli altri.
Top
Profilo Invia messaggio privato
ulisse
Dio maturo
Dio maturo


Registrato: 02/03/05 01:09
Messaggi: 1531
Residenza: Bagnone (MS)

MessaggioInviato: 08 Nov 2006 13:12    Oggetto: Rispondi

Benny ha scritto:
Ok, è quello che intendevo io. solo che l'ho messa in maniera diversa

Scusa ma avevo interpretato diversamente la tua frase! Embarassed
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Enigmi e giochi matematici Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi