Competitive-Prgoramming Practice for competitive programming with description of algorithms used to solve particular problem.