# The triangular encoding

You find a piece of paper. It reads

SGJAKFBWJMWQAMZEJJXNFZFPFFVL


Can you de-code it? You will have to add in the spaces. It is a phrase not a word.

Seeing as this is incredibly hard, I will give you a few hints...

A special triangle is required to do this

And:

A number line will help

Also:

Odds and evens are so, so different ;)

And the final clue is the title mixed with the tag

I will be very impressed by anyone who can even get close on this one...

• If this is too hard I'll add another hint, just ask Jan 8 '16 at 19:02
• What's the point of posting a puzzle that you're confident no one will be able to solve? If it isn't solvable without continually adding hints, it's not a good puzzle. Making it "hard" via insufficient information isn't a hard puzzle, it's an incomplete puzzle. Jan 8 '16 at 23:56
• When you mention needing a "special triangle" to decode this, the first thing that comes to mind is a Ouija board.
– JTL
Jan 9 '16 at 5:52
• No, I'll give this as a freebie. It's pascal's Jan 9 '16 at 9:46
• @GentlePurpleRain I am confident someone will decode this it is just a matter of logic Jan 10 '16 at 14:32

I believe that the solution is:

Count on a number line, and multiply by -1 if the $n$-th number in Pascal's triangle is even, i.e. the map:

$$\begin{array}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|} \hline 1 & 1 & 1 & 1 & 2 & 1 & 1 & 3 & 3 & 1 & 1 & 4 & 6 & 4 & 1 \\ \hline 1 & 2 & 3 & 4 & -5 & 6 & 7 & 8 & 9 & 10 & 11 & -12 & -13 & -14* & 15 \\ \hline \end{array}$$
$$\begin{array}{|c|c|c|c|c|c|c|c|c|c|c|c|c|} \hline 1 & 5 & 10 & 10 & 5 & 1 & 1 & 6 & 15 & 20 & 15 & 6 & 1 \\ \hline 16 & 17 & -18 & -19 & 20 & 21 & 22 & -23 & 24 & -25 & 26 & -27 & 28 \\ \hline \end{array}$$

* marking a potential mistake in encoding?

"Alter" each letter appropriately using the second row of the map, and you get

TIMEFLIESWHENX*OUAREHAVINGFUN

Where "alter" means shift modulo 26, e.g.,
1st letter: S + 1 = T
2nd letter: G + 2 = I
5th letter: K - 5 = F
8th letter: W + 8 = E
27th letter: V - 27 = U

In Python this could be:
lambda x,y: chr( ((ord(x) - ord('A') + y) % 26) + ord('A') )

Note that the asterisk on the -14 above indicates the real shift should be -13 instead, giving a Y instead of an X

and thus my final answer is the phrase

Time flies when you are having fun

• Really well done! Jan 11 '16 at 7:09
• Ah, not only are you correct you have also indeed found an error, I will change it in my question Jan 11 '16 at 7:11