Probably the best way to prepare yourself for this contest is by examining and reviewing
the contest problems from previous years. Links to the archived sites of more than
a decade's worth of past Stanford contests can be found in the history page.
Most of the previous contest problems are posted along with judge test data and
Looking for more practice? Here are a few other resources that may prove useful
during your pilgrimmage:
ACM-ICPC Live Archive
This site hosts a collection of all the contest problems used in the ACM-ICPC
regional and World Finals competitions over the past decade or more.
The best part is that you can register with the site to submit your solutions
for judging, and their online judge will tell you within seconds whether you
succeeded or not. You can easily spend a lifetime here and not be done.
Online Judges & Problem Archives
If the ACM-ICPC Live Archive is not enough for you, there are several other
excellent sites with thousands of programming problems of the variety you would
see in a contest like ours. The sites all have online judges to which you can
submit your solutions to be tested. Problem archives include the
UVa Online Judge originally created
by the Universidad de Valladolid in Spain, the
Sphere Online Judge in Poland, the
PKU JudgeOnline hosted by Peking University in
China, and the Online Contester by Saratov
State University in Russia.
Books & Training Manuals
If you are looking for a more structured way of educating and preparing yourself
for this type of competitive programming, a book or training manual may be the
right thing for you.
Skiena & Revilla's text
is by no means the best book on data structures and algorithms out there, but
nonetheless provides a good introduction to the "tricks of the trade"
for this type of programming contest.
From Baylor to Baylor contains
the problems sets used at the ACM-ICPC World Finals from 1991 to 2006 in
archival print quality. Finally, Steven Halim has recently written a very nice
TopCoder Algorithm Competitions
TopCoder runs periodic programming contests that are slightly different from the
ACM programming contests, but problems and skills used in this setting tend to be
It also provides contest die-hards with another avenue for strutting their skills, and
occassionally even offers opportunities to win some prize money.
The ACM International Collegiate Programming Contest Official Site
And, of course, you cannot forget the official site of the ACM ICPC, the ancestor
from which all our little contests have sprung. Here, you can find information and
links to past and current World Finals and regional contests around the world.