Back
Close

Pascal's Ball Pit

Statement
You're probably familiar with Pascal's triangle, wherein each number is the sum of the two numbers directly above it, with imaginary zeroes occupying the "empty" spaces: ` 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1`You can see that the rows increase in length by one on each iteration such that the triangle "grows downward" over time. For this problem, we'll instead construct an inverted pyramid by applying the same logic but without the imaginary zeroes. In fact, let's do away with numbers entirely and use these instead: 🔴 🔵 🟡. The rules for adding two colors are quite simple: <<1.>> If they're equal, it's effectively a no-op (🔵 + 🔵 = 🔵). <<2.>> Otherwise, the sum is whichever color isn't one of the summands (🔴 + 🔵 = 🟡, for example). Let's start with 🔴🔵🟡🔵 as our initial row and see how the triangle develops: `R B Y B Y R R B R Y`Observe that every "dot" in the subsequent rows is indeed the "sum" of the two dots above it. Note also that our triangle "shrinks downward"; each iteration decreases the row length by one, requiring it to be offset from the left by that much more in order to obtain the triangular shape. Given an integer [[N]] and an initial row of that many colored dots, display the full triangle.

Input description
<<Line 1:>> [[N]], the size of the triangle to be constructed <<Line 2:>> [[N]] dots, the first row of the triangle

Output description
[[N]] lines of ASCII art containing the triangle constructed by repeatedly adding the pairs of colors in each of the previous rows

Constraints
1 <= [[N]] <= 20

Game modes

Test cases
Example Test
Input
4 🔴🔵🟡🔵
Output
R B Y B Y R R B R Y

4 Validator
Input
4 🟡🔴🔴🟡
Output
Y R R Y B R B Y Y Y

Singularity check Test
Input
1 🔵
Output
B

Singularity check (validator) Validator
Input
1 🔴
Output
R

10 is magic Test
Input
10 🔴🟡🟡🔵🔴🟡🟡🟡🔵🟡
Output
R Y Y B R Y Y Y B Y B Y R Y B Y Y R R R B B R R Y B R Y B Y R B R Y R R B Y Y B R Y R Y R B B B B B B B B B B

10 is magic (validator) Validator
Input
10 🔵🟡🟡🟡🟡🔵🔵🔵🟡🟡
Output
B Y Y Y Y B B B Y Y R Y Y Y R B B R Y B Y Y B Y B Y B R Y R R R R R B B R R R R B Y R R R R B R R Y Y R Y B R

SoloMid Test
Input
15 🔵🟡🔵🟡🔵🟡🔵🔴🔵🟡🔵🟡🔵🟡🔵
Output
B Y B Y B Y B R B Y B Y B Y B R R R R R R Y Y R R R R R R R R R R R B Y B R R R R R R R R R Y R R Y R R R R R R R B B R B B R R R R R Y B Y Y B Y R R R B R R Y R R B R Y Y R B B R Y Y Y B Y B Y B Y R R R R R R R R R R R R R R R R R R R R R

SoloMid (validator) Validator
Input
13 🟡🔴🟡🔴🟡🔴🔵🟡🔴🟡🔴🟡🔴
Output
Y R Y R Y R B Y R Y R Y R B B B B B Y R B B B B B B B B B R B Y B B B B B B B Y Y R R B B B B B R Y B R Y B B B Y B R Y B R B R R Y B R Y Y R B R Y B Y Y Y B R R Y R Y R B B B B B B

Converge to the Sea Test
Input
17 🔴🟡🟡🔴🔵🟡🔵🔴🔵🟡🔴🔴🟡🔵🔴🔵🟡
Output
R Y Y R B Y B R B Y R R Y B R B Y B Y B Y R R Y Y R B R B R Y Y R R R R B R B Y B Y Y Y Y B Y B R R Y Y Y R R R Y Y Y R R R R B Y Y B R R B Y Y B R R Y R Y R Y R Y R Y R Y R B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B

Go to Hell Validator
Input
17 🔵🟡🟡🔵🔴🟡🔴🔵🔴🟡🔵🔵🟡🔴🔵🔴🟡
Output
B Y Y B R Y R B R Y B B Y R B R Y R Y R Y B B Y Y B R B R B Y Y B B B B R B R Y R Y Y Y Y R Y R B B Y Y Y B B B Y Y Y B B B B R Y Y R B B R Y Y R B B Y B Y B Y B Y B Y B Y B R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R

Islands Test
Input
20 🔴🔴🔵🔵🟡🔴🟡🟡🔴🔵🔵🔴🟡🟡🔴🟡🔵🔵🟡🔵
Output
R R B B Y R Y Y R B B R Y Y R Y B B Y B R Y B R B B Y B Y B Y B Y B B R B R R B R Y Y B R R R R R R R R B Y Y Y R Y B Y R Y R R R R R R R Y R Y Y B R R B B B R R R R R R B B B Y R R Y B B Y R R R R R Y B B R B B R B R B R R R R B R B Y Y Y Y Y Y Y R R R Y Y Y R Y Y Y Y Y B R R B Y Y B B Y Y Y R Y R Y R Y R B Y Y B B B B B B B Y Y R B B B B B B R B Y B B B B B Y R R B B B B R R Y B B B Y B R B B R Y Y B Y Y R R B R Y

Islands (validator) Validator
Input
20 🔴🟡🔴🟡🔵🔴🔴🔵🟡🟡🔴🟡🟡🔴🔵🔵🔴🟡🔴🟡
Output
R Y R Y B R R B Y Y R Y Y R B B R Y R Y B B B R Y R Y R Y B B Y B Y B Y B B B B B Y B B B B B R B R R R R R R B B B R R B B B B Y Y Y R R R R R Y B Y R Y B B B R Y Y B R R R R B R B B R B B Y B Y R Y R R R Y Y B Y Y B R R R B B B R R B Y R Y R Y R R Y B B Y R Y R B B B B R B R B R B B B B B B Y Y Y Y Y Y B B B B R Y Y Y Y Y R B B Y B Y Y Y Y B Y R R R Y Y Y R R R R B Y Y B R R Y R Y R Y B B B B B B B B B B B B B B B

Solution language

Solution

Stub generator input