3: Educational

Tutorials

Highly recommended reads for those who are starting out. In particular, everyone should know how to do I/O (input/output) and dynamic programming. Introduction to Algorithms

Practice

The following websites not only contain many problems, but they also host programming contests! A great place to practice under time pressure. You may also read code submitted by other users.

For a broader variety of problems you can also visit the following sites.

More links

  • UVA toolkit -- a very large collection of links by UVa
  • XRDS articles on competitive programming: ( 1 ) ( 2 )