You have an infinite amount of timers, each is an hour long (they do not have dials on telling you how long they've been going  they just beep when the time is up). You can set it to double speed at any time, but you cannot set it back to normal speed (eg if you set it to double speed at the start it will last 30 minutes.
Using each timer only once, is it possible to time exactly 25 minutes?
If it is, what is the smallest number of timers you need to do this, and the quickest time you can acheive it?
Let us assume the solution consist in building a system that is made of many clocks.
In order to get 25 min, we would use a 15min clock, a 7.5 min clock. Next, a 3.75 clock cannot be used, because it would exceed 25min. Thus we would use a 1.875 and so, each time either using the next shortest ONLY IF it does not exceed 25 min.
After an hour, we can obtain the shortest time clock, which is virtually zero and wich will be used as the last clock used in the system.
Hence, for this system we need a infinite number of timers. But does that necessarily mean we need an infinite ammount of time to build our system?
No, because in 45 minutes we can build the first timer (a 15 min clock), and using the others as they get available. As said before, in one hour every needed timer is available, so the minimum time is 45 min + 25 min = 70 minutes.
However, the system cannot be achieved in 110 minutes, because after 15 + 7.5 minutes, the next timer to be used is not ready yet (the 3,75min is ready but it cannot be used), so we have to wait some extra time before the 1,875 timer gets available.
But we do know that after an hour, all timers are available so we need a maximum of 60 + 25 = 85 minutes.
The solution would consist in using an infinite number of timers but it would require 70 to 85 minutes to build the system and run it while only 60 minutes to build it.
I hope I didn't waste your time with my solution (because if so, I lose a lot more in writing all this ;)

Posted by Alain
on 20031016 19:36:27 