Resources to prepare yourself for the The International Collegiate Programming Contest (ICPC) or any competitive programming contest
What is the ICPC?
“The ICPC, the ‘International Collegiate Programming Contest,’ is an extra-curricular, competitive programming sport for students at universities around the world. ICPC competitions provide gifted students opportunities to interact, demonstrate, and improve their teamwork, programming, and problem-solving process. The ICPC is a global platform for academia, industry, and community to shine the spotlight on and raise the aspirations of the next generation of computing professionals as they pursue excellence.” — Wikipedia
I’m by no mean a top coder or a world finalist. I just wanted to share the resources I found helpful, and if you follow them, hopefully, you will be an ICPC world finalist.
I really like competitive programming, and I really want to be someone like Gennady Korotkevich. He is truly a living legend in the field of competitive programming.
Anyways, let’s get into the details …
The Steps to be a Good Competitive Programmer
It’s really simple: There are no tricks and there’s no short way … all you need is dedication and a goal, and you are all set.
First, you will need to be familiar with at least one of the following programming languages: Python, Java, C, or C++.
Secondly, you will need to study all of the different topics about data structures and algorithms.
Finally, do a lot of problems … a lot!
These are the main topics that should be done thoroughly.
Ubiquitous binary search — get a grasp of discrete and continuous binary searches
Dynamic programming is quite important and can be infused and asked with various other topics. Some different types of DP concepts are:
“Competitive Programming 3”: This book is beyond great. I’m currently in the middle of it and I’m enjoying the problems and the book structure. I highly recommended it.
“The ‘Science’ of Training in Competitive Programming”: In this blog,the author explains how to train for CP and what he did in order to be a good problem solver.
How to be a red coder: This Quora answer really goes deep into how to be a red coder and train efficiently.
Did you find this article valuable?
Support Hassan ElDesouky by becoming a sponsor. Any amount is appreciated!