| THREE BUCKET PROBLE There are three buckets, each of which contains an integral amount of liquid. The goal is to empty one of the buckets! The rules are: A: The capacity of each bucket in unlimited. B. The liquid in a given bucket may be increased only doubling its volume with liquid from another bucket. C. The liquid in a given bucket may be decreased only by some of it into another bucket. Obviously one bucket may be emptied when, 1. Two buckets have the same volume of liquid, or 2. One bucket contains half of the total liquid. If this is to be a viable problem, the initial amount of liquid and its allocation among the three buckets should not permit an immediate solution. There are certain interim positions which usually precede a solution. These are 1. A = 2^M; B = 2^N. where A and B are the volumes of liquid in any two buckets M & N are integers and M <= N. If M < N, the liquid from C may be added to A to make A = B 2. A + B = 2^M + 2^N, but A <> M(N) & B <> N(M). By alternately pouring liquid from B to A and then from A into B, it may be possible to achieve position 1. EXAMPLE: A B 8 26 M = 1, N = 5 16 18 32 2 QED The roles of A & B have been reversed but this does not invalidate the result. To complete example, we must consider all possible initial positions. 1 33 2 32 3 31 6 28 12 22 24 10 14 20 28 6 Failure 4 30 32 2 QED 5 29 10 24 Failure 7 27 14 20 Failure 8 26 16 18 32 2 QED 9 25 18 16 QED 11 23 22 12 10 24 Failure 13 21 26 8 QED 15 19 30 4 2 32 QED 16 18 32 2 QED A "seed" is any value for A that is not divisible by 2, Why do some seeds lead to a successful partitioning into A & B, while others do not? Before we address this problem, let's consider a third advantageous position. 3. A + B = |2^N - 2^M| ! If A & B can be partitioned into 2^M and 2^N, then 2^M can be taken from bucket C with the result that A + B = 2^N 7 27 1 |
||