An experimental Class Preparing Students for Programming Contests

Jenq-Foung (J.F.) Yao, Ph.D.

Department of Mathematics and Computer Science

Georgia College & State University

(912) 445-1626,





Innocently the author accepted the job as a coach without knowing what was coming in 2000 ACM Programming Contest. A logical thought was that the students trained by a solid computer science program should perform well in a programming contest. Theoretically speaking this is true, but in reality there is more to it. The contestants must be well prepared for the programming format. Our teams were unprepared and did not know what to expect. As one could predict, the results were catastrophic, all three of our teams solved only one problem each. Learned from the winning team that they spent tremendous amount of time on preparing the contest confirmed the claim stated above. A good question to ask is how to prepare students for the contest in addition to the training of regular computer science classes. Learning from the bird-of-the-feather-session for programming contest at ACM SIGCSE 2001, there are two web sites which contain problem sets [1][2]; one of which [1] has an on-line judge that allows users to submit answers and receive feedback from the judge. The author decided to utilize these resources to prepare our students.





A special topic class was created last summer solely for the programming contest preparation. There were fifteen students in the class all of whom needed to have permission of the instructor to register in this class. These students were divided into five teams with three students per team. The class was scheduled for eight weeks. Each team was expected to solve as many questions as possible each week. The students presented their works in the class, and then the instructor gave them feedback on their solutions. The whole class had a programming contest among themselves per week in the last four weeks. The instructor provided ten questions, and the students tried solving the questions in five hours.




The results of the class were remarkable. Students had become enthusiastic about programming contests. One of the problems we had previously was that students were not interested in any programming contest at all. This special class really stimulated our students' interest in programming contests. Our regional ACM Programming Contest took place on Oct. 6, 2001. Our teams' performance was very encouraging. Three teams, which were all formed by undergraduate students, from our university competed in the contest. Our teams made respectable performance, placing 33rd, 43rd, and 63rd respectively, which is an improvement from last year (placing 58th, 62nd, and 64th). It may be noted that one of our teams defeated 22 major university teams, another team defeated 16 major university teams, and even our freshman/sophomore team defeated 5 teams from major universities. Contest results are posted at URL [3].


In conclusion, the author believe that the special class was successful in preparing our students to look forward to programming contests with eager anticipation knowing that they were ready for the programming challenge.




[1] ACM International Collegiate Programming Contest Problem Set Archive With Online Judge, <>

[2] Programming Contest Problems Archives, <>

[3] The 2001 ACM SE Regional Programming Contest Results, <>