Previous Contests

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 sample solutions.

Other Resources

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 handbook titled Compeitive Programming.

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 very similar. 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.