This session presents a curriculum developed to prepare programming students for regional high school programming competitions. In these competitions, teams of three to four students from various regional high schools compete to solve eight to twelve programming problems over the course of four hours. Dozens, if not hundreds, of these events take place every year, and there is even an international organization that holds an Olympiad event at the college level. Based around past competition questions, this curriculum teaches concepts...