Here is a brute force solution to the fetch puzzle.
The puzzle goes like this – You have two buckets. A 3 gallon bucket and a 5 gallon bucket. Buckets are not marked or graduated. You are to fetch 4 gallons of water in a single trip to the river. How will you do it?
Basically, at each step there are three possibilities :
- You can fill a bucket.
- You can transfer water from one bucket to the other one.
- You can dump out the water from a bucket.
In this brute force solution, I try each one of these steps and then try all three again after each one of the previous steps. And on and on until I get the required amount of water in one of the buckets.
Check it out. Source code is on my github repo – https://github.com/ashtewari/fetch