The Gory Details
The Board
You will be using a 9x20 Tetris board. You will be allowed to specify each piece, its orientation (rotation), and its horizontal position at the time of dropping. In essence, all pieces are rotated, translated, and then dropped from the top. If a row becomes full, it is deleted and all blocks above it are shifted down one row. To see how this works (or if you don't know how to play Tetris), try this applet.
The height of the board is 20. This means that when a piece lands, no part of it can be above the 20th row, even if the dropping of that piece causes some rows to disappear. Solutions violatiing this condition are unacceptable.
As an example, if we gave you the puzzle:
then one way to generate such a puzzle is to drop the pieces in the following order:
It is important that you drop the pieces in the order indicated in the figure. If you swapped the order of pieces 4 and 5, then piece 4 would fall to the bottom. Notice that this is also the most efficient way to draw this puzzle in the sense that we use as few pieces as possible.
The Puzzles
We have defined nine puzzles in the contest. (We reserve the right to add more puzzles to solve as time goes on. If we do this, all the contestants will be notified via email of the change.)NOTE: 71 new puzzles will be released. The first 21 will be released on Monday, Sept 25 at 4pm, and the remaining 50 will be released on Oct 8th at 4pm, making a total of 80.. We will also improve the submission process so that it's easier to submit a large number of solutions.
The format of the puzzles is a file containing spaces, and *'s. You must leave blocks in the squares indicated by *'s. You can see all the puzzles here.
The Solutions
There are 7 possible Tetris pieces which we denote by
A...G , 4 possible orientations which we denote byH...K , and 9 possible horizontal positions to drop them from which we denote by0..8 . (The leftmost column intersecting with the piece is the column used.) Here are all the pieces and their orientations:We write a move as [piece orientation position]. Thus there are 143 possible moves:
AH0 AH1 AH2 AH3 AH4 AH5 AH6 AH7 BH0 BH1 BH2 BH3 BH4 BH5 BH6 BH7 BH8 BJ0 BJ1 BJ2 BJ3 BJ4 BJ5 CH0 CH1 CH2 CH3 CH4 CH5 CH6 CH7 CJ0 CJ1 CJ2 CJ3 CJ4 CJ5 CJ6 DH0 DH1 DH2 DH3 DH4 DH5 DH6 DH7 DJ0 DJ1 DJ2 DJ3 DJ4 DJ5 DJ6 EH0 EH1 EH2 EH3 EH4 EH5 EH6 EH7 EJ0 EJ1 EJ2 EJ3 EJ4 EJ5 EJ6 EK0 EK1 EK2 EK3 EK4 EK5 EK6 EK7 EL0 EL1 EL2 EL3 EL4 EL5 EL6 FH0 FH1 FH2 FH3 FH4 FH5 FH6 FH7 FJ0 FJ1 FJ2 FJ3 FJ4 FJ5 FJ6 FK0 FK1 FK2 FK3 FK4 FK5 FK6 FK7 FL0 FL1 FL2 FL3 FL4 FL5 FL6 GH0 GH1 GH2 GH3 GH4 GH5 GH6 GH7 GJ0 GJ1 GJ2 GJ3 GJ4 GJ5 GJ6 GK0 GK1 GK2 GK3 GK4 GK5 GK6 GK7 GL0 GL1 GL2 GL3 GL4 GL5 GL6It is true that you do not necessarily need to use a computer to solve these. However, we expect that clever programming will prevail.
As an example, the solution to the above puzzle would be denoted
AH3 BJ0 BJ4 AH0 EL6 . Try pasting it into the applet, and then hit “replay moves.”Helpful programs
In addition to the applet mentioned above, we've written a program to evaluate solutions, which you're welcome to make use of. Here it is, and here are the usage instructions:(to compile g++ -o test test.cpp) Usage: ./test [puzzlefile] This program reads a sequence of moves from its standard input. If no puzzlefile is named on the command line, then the output is just the ending configuration (shown with " "s and "*"s). If a puzzlefile is included, then it compares the ending configuration with the given puzzlefile, and outputs one of four possibilities (on a single line) as illustrated below: Correct, Number of moves: 310 Incorrect. Illegal move: ARt You lose by exceeding the maximum height.
Daniel Sleator Last modified: Fri Sep 22 14:18:38 EDT 2000