# Solution to Simmons Hall

#### by Curtis Chou, Jakob Weisblat, Jon Schneider, Lewis Chen, Rahul Sridhar, Anderson Wang

```ATE DINNER
DARN IT ALL
LATE ONSET
NET LOSSES
RED DIESEL
SALTON SEA
TASTINESS
```

We're presented with a 3×3 grid with some letters in it. The flavortext, combined with the diagram, suggests the Sierpiński Carpet. Further confirmation is provided by the fact that the three-dimensional version of this, the Menger Sponge, looks a lot like Simmons Hall, which is also sometimes called “The Sponge”.

Now we must figure out what to do with this carpet and with the answers. The first key insight comes from the answers. Each of them is nine letters long, and they are composed of the same set of eight letters on the outside (ADELNRST), plus an I or an O in the middle. Finally, there is one answer that starts with each of those eight letters. The combination of these facts with the idea of fractals suggests that we can take the original 3×3 grid and "expand" it to another layer by replacing each of the letters with a 9-letter block corresponding to the answer beginning with that letter.

For example, we might expand

 N
to get the following grid:
 N E T L O S S E S

Thus, we could expand the initial grid to get, after one iteration:

 S A L T A S S A L T O N T I N T O N S E A E S S S E A E N D L A T L O A E O N D E D S E T S A L L A T A T E T O N E O N D I N S E A S E T N E R

Note that this is identical to the Sierpinski carpet after one iteration, where we shade the Is and Os (the only letters that cannot be further expanded) black.

The Is and Os in the black squares can be read as ones and zeros in row order to get `01000001`, which is ASCII for `A`. Suspiciously, the puzzle tells us that 1.1 also corresponds to `A`.

Expanding to a second iteration, we get:

 S A L A T E L A T T A S A T E S A L S A L A T E L A T T O N D I N E O N T I N D I N T O N T O N D I N E O N S E A N E R S E T E S S N E R S E A S E A N E R S E T T A S N E T T A S N E T T A S N E T T I N L O S T I N L O S T I N L O S E S S S E S E S S S E S E S S S E S S A L E N D A T E E N D S A L S A L S A L E N D A T E T O N L O A D I N L O A T O N T O N T O N L O A D I N S E A D E D N E R D E D S E A S E A S E A D E D N E R E N D N E T D A R L A T A T E T A S L O A L O S N I T E O N D I N T I N D E D S E S A L L S E T N E R E S S L A T A T E E N D N E T E O N D I N L O A L O S S E T N E R D E D S E S D A R E N D D A R S A L E N D T A S N I T L O A N I T T O N L O A T I N A L L D E D A L L S E A D E D E S S S A L A T E L A T L A T A T E T A S A T E T A S E N D T O N D I N E O N E O N D I N T I N D I N T I N L O A S E A N E R S E T S E T N E R E S S N E R E S S D E D T A S N E T E N D N E T D A R N E T T I N L O S L O A L O S N I T L O S E S S S E S D E D S E S A L L S E S S A L E N D A T E S A L E N D T A S N E T E N D R E D T O N L O A D I N T O N L O A T I N L O S L O A D I E S E A D E D N E R S E A D E D E S S S E S D E D S E L

We can now read out more binary in row-major order. Breaking the binary into bytes, the first byte is `01011001`, which is ASCII for `Y`, and the second byte is `01010100`, which is ASCII for `T`. The puzzle tells us that 2.1 corresponds to `Y` and 2.2 corresponds to `T`; we now have enough information to understand that x.y refers to the yth byte of the xth iteration. We can confirm that the next few provided characters match up as well.

Once we've confirmed that, we can start calculating our own values for the positions in the box at the bottom. We can either manually expand the box to enormous sizes, write a program to do that for us, or selectively expand individual areas that we know will lead us to the spots that we want to get the values of. Either way, the ASCII values we get out are as follows:

 3.6 3.55 4.23 4.129 5.1881 3.13 3.33 3.60 2.6 5.510 `01000001` `00100000` `01010010` `01001111` `01010111` `00100000` `01000010` `01001100` `01001111` `01010111` `A` ` ` `R` `O` `W` ` ` `B` `L` `O` `W`

Thus, to dry out the carpets we need A ROW BLOW, using the cold winds from Dorm Row!