Competitive Programming: From Beginner to Expertby Keshav Dhandhania
This is a very comprehensive 88-part course on competitive programming. It gets you from knowing basic programming to being a yellow-red rated coder on Codeforces / CodeChef / TopCoder / etc.