Photo by Elena Mozhvilo on Unsplash
You arrive at an island in which there are 12 residents. You are told that all but one of the islanders weighs the same, but that one of the twelve weighs more or less than the others. You only have a pan-scale, like that of the background, and you have a limit of three measurements.
I first heard of this puzzle on the show Brooklyn-99, and then in various places on the internet. Largely the solutions either:
If we only consider the first question above, then we just have to select the subsets of the twelve into three sets (on the left-pan, on the right-pan, and sitting-this-measurement-out). I won’t solve this part, but rest-assured, that we have three measurements, (each of which gives a reading of “left-heavy”, “right-heavy”, or “balanced”), of which we can get 33=27 outcomes. So we’re probably okay.
If we tackle the second question, there are 24 possible outcomes, so that tells us that we (potentially) have enough information, but since 24 is close to 27, we likely have to be very careful with the way we combine the information for each measurement. Hey, there’s a reason there is some amount of buzz about this puzzle!
First, let’s number the islanders 1 though 12, and use the superscript X+ denote that X is heavier, and X- that X is lighter.
Secondly, if we let the symbol L denote the scale falls to the left, R that the scale falls to the right, and C denote the case where a balanced scale.
Aside: Splitting up the Islanders
My solution, and every other one that I have see involves weighing three groups of four: one on the left, one on the right, and one sitting-out the measurement. I will use the middle of the scale to visualize this in the tables. I only have intuition to support why this is necessary. Clearly weighing six on each side is a waste of time since you only deduce that it is imbalanced, not that the imbalance arises from a heavier or lighter islander. Perhaps the puzzle would admit a solution in which 5 islanders are on the scale for at least one of the measurements? Perhaps.
So, we start with two tables, and start to fill things out. At the start they look like this:
Sequence Table:
| Sequence | Assignment | Sequence | Assignment | Sequence | Assignment |
|---|---|---|---|---|---|
| CCC | LCC | RCC | |||
| CCL | LCL | RCL | |||
| CCR | LCR | RCR | |||
| CLC | LLC | RLC | |||
| CLL | LLL | RLL | |||
| CLR | LLR | RLR | |||
| CRC | LRC | RRC | |||
| CRL | LRL | RRL | |||
| CRR | LRR | RRR |
Person allocation table:
| No. | Left | Sitting | Right |
|---|---|---|---|
| Out | |||
| 1 | |||
| 2 | |||
| 3 |
Now we will start filling in entries of the table, starting with 1 and ending with 12. In the person allocation table, the person must be allocated in one of the three columns for each of the three measurements. After the placement, we record where in the sequence table what each of the two outcomes are by considering the heavy and light version of that person.
There are some constraints:
I started by thinking in terms of the sequence table, and filling that up, which determines the corresponding allocation table. These steps happen to be the order I picked, I am sure there are a large number of permutations.
I decided to assign LLL=1+, which requires RRR=1- This gives the following entries:
Sequence Table:
| Sequence | Assignment | Sequence | Assignment | Sequence | Assignment |
|---|---|---|---|---|---|
| CCC | XXX | LCC | RCC | ||
| CCL | LCL | RCL | |||
| CCR | LCR | RCR | |||
| CLC | LLC | RLC | |||
| CLL | LLL | 1+ | RLL | ||
| CLR | LLR | RLR | |||
| CRC | LRC | RRC | |||
| CRL | LRL | RRL | |||
| CRR | LRR | RRR | 1- |
Person allocation table:
| No. | Left | Sitting | Right |
|---|---|---|---|
| Out | |||
| 1 | 1 | ||
| 2 | 1 | ||
| 3 | 1 |
Assign LLC=2+, which requires RRC=2-
Sequence Table:
| Sequence | Assignment | Sequence | Assignment | Sequence | Assignment |
|---|---|---|---|---|---|
| CCC | XXX | LCC | RCC | ||
| CCL | LCL | RCL | |||
| CCR | LCR | RCR | |||
| CLC | LLC | 2+ | RLC | ||
| CLL | LLL | 1+ | RLL | ||
| CLR | LLR | RLR | |||
| CRC | LRC | RRC | 2+ | ||
| CRL | LRL | RRL | |||
| CRR | LRR | RRR | 1- |
Person allocation table:
| No. | Left | Sitting | Right |
|---|---|---|---|
| Out | |||
| 1 | 1,2 | ||
| 2 | 1,2 | ||
| 3 | 1 | 2 |
Assign LLR=3+, which requires RRL=3-
Sequence Table:
| Sequence | Assignment | Sequence | Assignment | Sequence | Assignment |
|---|---|---|---|---|---|
| CCC | XXX | LCC | RCC | ||
| CCL | LCL | RCL | |||
| CCR | LCR | RCR | |||
| CLC | LLC | 2+ | RLC | ||
| CLL | LLL | 1+ | RLL | ||
| CLR | LLR | 3+ | RLR | ||
| CRC | LRC | RRC | 2+ | ||
| CRL | LRL | RRL | 3- | ||
| CRR | LRR | RRR | 1- |
Person allocation table:
| No. | Left | Sitting | Right |
|---|---|---|---|
| Out | |||
| 1 | 1,2,3 | ||
| 2 | 1,2,3 | ||
| 3 | 1 | 2 | 3 |
Assign CCL=4+, which requires CCR=4-
Assign RLC=5+, which requires LRC=5-
Assign CRL=6+, which requires CLR=6-
After filling in half the entries it looks like this:
| Sequence | Assignment | Sequence | Assignment | Sequence | Assignment |
|---|---|---|---|---|---|
| CCC | XXX | LCC | RCC | ||
| CCL | 4+ | LCL | RCL | ||
| CCR | 4- | LCR | RCR | ||
| CLC | LLC | 2+ | RLC | 5+ | |
| CLL | LLL | 1+ | RLL | ||
| CLR | 6- | LLR | 3+ | RLR | |
| CRC | LRC | 5- | RRC | 2+ | |
| CRL | 6+ | LRL | RRL | 3- | |
| CRR | LRR | RRR | 1- |
Person allocation table:
| No. | Left | Sitting | Right |
|---|---|---|---|
| Out | |||
| 1 | 1,2,3 | 4,6 | 5 |
| 2 | 1,2,3,5 | 4 | 6 |
| 3 | 1,4,6 | 2,5 | 3 |
Similarly, the assignments can be chosen as:
CRR = 7+, CLL=7-
RCR = 8+, LCL=8-
RCC = 9+, LCC=9-
RCL = 10+, LCR=10-
LRR = 11+, RLL=11-, and
CRC = 12+, CLC=12-
The tricky bit is to ensure that you don’t over-fill any of the allocations, and you don’t repeat any prior allocation. At this stage it sometimes helped to think of the allocations first, and then hypothesize a heavy- or light-person and see if it would fit into the sequence table. In fact, I got almost all the way to the end, and I realized that I had an allocation that was repeated. To solve this I had to think in terms of swapping people in one of the measurements, and change the corresponding sequence table entries.
After filling in all the entries:
| Sequence | Assignment | Sequence | Assignment | Sequence | Assignment |
|---|---|---|---|---|---|
| CCC | XXX | LCC | 9- | RCC | 9+ |
| CCL | 4+ | LCL | 8- | RCL | 10+ |
| CCR | 4- | LCR | 10- | RCR | 8+ |
| CLC | 12- | LLC | 2+ | RLC | 5+ |
| CLL | 7- | LLL | 1+ | RLL | 11- |
| CLR | 6- | LLR | 3+ | RLR | unused |
| CRC | 12+ | LRC | 5- | RRC | 2- |
| CRL | 6+ | LRL | unused | RRL | 3- |
| CRR | 7+ | LRR | 11+ | RRR | 1- |
Person allocation table:
| No. | Left | Sitting | Right |
|---|---|---|---|
| Out | |||
| 1 | 1,2,3,11 | 4,6,7,12 | 5,8,9,10 |
| 2 | 1,2,3,5 | 4,8,9,10 | 6,7,11,12 |
| 3 | 1,4,6,10 | 2,5,9,12 | 3,7,8,11 |
Checking to see if our answer is correct, consider the 3+ case. You can see in the allocation table that we would get the result “LLR”, which is the one indicated in the sequence table.