  We prove a conjecture of Knutson asserting that the Schubert structure
constants of the cohomology ring of a two-step flag variety are equal to the
number of puzzles with specified border labels that can be created using a list
of eight puzzle pieces. As a consequence, we obtain a puzzle formula for the
Gromov-Witten invariants defining the small quantum cohomology ring of a
Grassmann variety of type A. The proof of the conjecture proceeds by showing
that the puzzle formula defines an associative product on the cohomology ring
of the two-step flag variety. It is based on an explicit bijection of gashed
puzzles that is analogous to the jeu de taquin algorithm but more complicated.
