Hier volgen een aantal mogelijke oplossingen.
De eerste is nogal formeel.
Maakt gebruik van het feit dat voor 2 getallen a en b
er altijd gehele X en Y te vinden zijn
zodat aX + bY = 1
In ons geval 2 • 11 - 3 • 7 = 1
We gaan eerst 1 minuut fabriceren en gebruiken dan de kleinste
zandloper om er 14 bij te doen:
|
t = 0:
t = 7:
t = 11:
t = 14:
t = 21:
t = 22:
t = 29:
t = 36: |
beiden beginnen
kleinste is leeg; omdraaien
grootste leeg, kleinste 4; beiden omdraaien
kleinste leeg, grootste 3; kleinste omdraaien
kleinste leeg, grootste 10; BEGIN te koken
beiden leeg, kleinste omdraaien
beiden leeg, kleinste omdraaien
beiden leeg; KLAAR. |
|
|
Tweede oplossing:
|
t = 0:
t = 7:
t = 11:
t = 14:
t = 22:
t = 29: |
beiden beginnen
kleinste is leeg; omdraaien
grootste leeg, kleinste 4; grootste omdraaien
kleinste leeg: BEGIN te koken
beiden leeg, kleinste omdraaien
beiden leeg; KLAAR |
|
|
Derde oplossing:
|
t = 0:
t = 7:
t = 11:
t = 22: |
beiden beginnen
kleinste leeg, BEGIN te koken
grootste leeg; omdraaien
grootste weer leeg: KLAAR |
|
|
Een erg mooie en snelle oplossing.
Zo kun je in het algemeen met een loper van a minuten en
een loper van b > a minuten een tijd t = 2b
- a fabriceren:
begin beiden, als de kleinste leeg is, BEGIN te koken. Als de
grootste leeg is draai je hem om en wacht tot hij weer leeg is;
dan ben je KLAAR.
Het koken duurt zo (b - a) + b = 2b
- a.
Vierde oplossing:
|
t = 0:
t = 7:
t = 11:
t = 15: |
beiden beginnen en BEGIN te koken!
kleinste leeg: omdraaien
grootste leeg, kleinste 3; kleinste omdraaien
kleinste leeg; KLAAR! |
|
|
Korter kan dus zeker niet!
|