Training

This page contains resources to train for our programming contests. Our contests are informatics contests. This means they include data structures, algorithms, programming, mathematics, and general problem solving.

An archive of past problems in our contests is hosted at Prog4Fun, which is kindly maintained by Richard Lobb.

We maintain a Discord group (link in footer) where training rounds are occasionally conducted during any long gaps in the SPAR schedule. The rounds are usually targeted to teams vying for ICPC Regional Finals and World Finals.

Our contests are generally similar to other popular competitive programming formats. There are many websites that run regular contests that can be used for training. Additionally, these websites are often an excellent resource for tutorials and other training material.

Contest Websites
  • Codeforces (regular high quality contests)
  • Atcoder (regular high quality contests)
  • USACO (yearly high quality contests, IOI style)
  • Codechef (regular high quality contests)
  • Leetcode (weekly contests, very popular)
  • DMOJ (regular contests)
  • Hackerearth (regular contests)
  • Topcoder (occasional contests of high quality, and the archive of past problems contains many very high quality problems; can be difficult to access)

Other websites do not run contests but maintain other useful resources such as tutorials, archives of problems, or aggregate statistics for contests.

Other Websites
  • Kattis (good archive for ICPC style problems)
  • cp-algorithms (algorithm tutorials)
  • USACO Guide (algorithm tutorials, problem archive)
  • ORAC (problem archive)
  • SPOJ (problem archive)
  • Clist (contest platform aggregator and calendar)
  • CSES (problem archive)
  • Hackerrank (problem archive, they no longer seem to run contests)

There are some books on competitive programming.

Books