This is a fun little word puzzle based on a fun little number puzzle.

enter image description here

  • 1
    $\begingroup$ I fought with this for a while, thinking that it would only be logical for different colors to represent different digits. Perhaps it will be useful for others to know that only within each given addition problem do different colors mean different digits... but this doesn't hold between the different "equations". For example, if the digit $a$ is yellow in the first addition problem, then $a$ could still be used as the purple or green (or whatever) digit in the second and third addition problems. $\endgroup$
    – Serafina
    Commented Mar 15, 2023 at 19:08
  • $\begingroup$ Is this technically a cryptarithm/alphametic puzzle? $\endgroup$
    – user170231
    Commented Mar 16, 2023 at 20:20

3 Answers 3


The answer is


By solving the color puzzle, we find that the three numbers being added each time are

185 + 185 + 185 = 555; 148 + 148 + 148 = 444, and 133 + 133 + 133 = 399.

These are the only numbers that match up to the colors.

Since the first math puzzle

had to result in all the same digit when solved, and the last numbers all had to add up to itself, that practically limited my options to "0" and "5". 000 wasn't very helpful, but 555/3=185 matched the pattern.

Applying to the same kind of logic to the second math puzzle,

This again had to result in a three-digit number with all the same digits. 444/3=148 was the only result to match the pattern.

With the third,

Since you're not limited to all three digits being the same number, you don't have that same clue. However, since the first three digits added up to the same number as the last two in the smaller numbers, and it's being added three times, "133" seemed a reasonable guess, and it worked with the math.

At this point, I actually thought I was on the wrong track, since

I had several different colors all mapped to "1".

I decided to try it anyway, though, and went to the next step just to see.


the colors that correspond to each answer,

We get numbers that correspond to letters.


In the first puzzle, the greenish-blue color corresponds to "1", and in the third puzzle green is "3",

this gives us


Doing this for the whole message, we get

13 15 14 1 18 3 8 9 5 19

Which, using the conversion table provided, spells out


  • 1
    $\begingroup$ Of course you're right. Well done, Mithical! $\endgroup$
    – Magmatic
    Commented Mar 13, 2023 at 20:04

I want to add to the (excellent) answer from Mithical.

There is only one solution to the third number problem :

We want 3 x ABB = BCC
If B is 4 or more, 3 x BB can't make something of the form YCC (the ones and tens will be different because of carry over) so 3 x ABB can't make BCC (the hundreds won't help)
So there is no carry over, B = 1, 2 or 3 and C = 3, 6 or 9 and 3 x B = C
Because there is no carry over, looking at the hundreds, 3 x A = B
Now the only solution is A = 1, B = 3 and C = 9, with 3 x 133 = 399


The other answers are entirely too logical about this. There are at most 999 possible combinations for each math part, so just try them all. Rather, let the computer try them all. It turns out there is only one non-trivial solution for each.

Here is some C# code to run in the interactive shell.

foreach (var darkGreen in Enumerable.Range(0, 10))
    foreach (var pinkPurple in Enumerable.Range(0, 10))
        foreach (var yellow in Enumerable.Range(0, 10))
            var row = int.Parse(darkGreen.ToString() + pinkPurple.ToString() + yellow.ToString());
            var expected = int.Parse(yellow.ToString() + yellow.ToString() + yellow.ToString());
            if (row * 3 == expected)
                Console.WriteLine($"darkGreen: {darkGreen}, pinkPurple: {pinkPurple}, yellow: {yellow}");

foreach (var orange in Enumerable.Range(0, 10))
    foreach (var bluePurple in Enumerable.Range(0, 10))
        foreach (var blue in Enumerable.Range(0, 10))
            var row = int.Parse(orange.ToString() + bluePurple.ToString() + blue.ToString());
            var expected = int.Parse(bluePurple.ToString() + bluePurple.ToString() + bluePurple.ToString());
            if (row * 3 == expected)
                Console.WriteLine($"orange: {orange}, bluePurple: {bluePurple}, blue: {blue}");

foreach (var brown in Enumerable.Range(0, 10))
    foreach (var green in Enumerable.Range(0, 10))
        foreach (var red in Enumerable.Range(0, 10))
            var row = int.Parse(brown.ToString() + green.ToString() + green.ToString());
            var expected = int.Parse(green.ToString() + red.ToString() + red.ToString());
            if (row * 3 == expected)
                Console.WriteLine($"brown: {brown}, green: {green}, red: {red}");


darkGreen: 0, pinkPurple: 0, yellow: 0
darkGreen: 1, pinkPurple: 8, yellow: 5
orange: 0, bluePurple: 0, blue: 0
orange: 1, bluePurple: 4, blue: 8
brown: 0, green: 0, red: 0
brown: 1, green: 3, red: 9

No thinking required.

  • $\begingroup$ Note that many puzzles on this site can be solved with brute force like this, but the point is to challenge your mind by attempting to find a creative or intuitive way to solve them instead. As Mithical demonstrated above, with a bit of logic you can quickly derive the answer without requiring a program at all. (And I daresay it took them less time than it took you to write that program.) $\endgroup$ Commented Mar 16, 2023 at 19:45
  • $\begingroup$ It took longer for me to match up the colors to decipher the letters than it did to write the three foreach statements, so ¯\_(ツ)_/¯ $\endgroup$
    – tolos
    Commented Mar 17, 2023 at 13:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.