Only One Rule
is followed by every Programmer -> Practice, Practice &
Practice.
BookList
Newbie Who has no knowledge about programming
Start learning C programming (40 days at most)
Reference Book:
Topics must be covered -
Start Solving Problems After learning Loop(20
days)
Target Count - 100 problems within 20 days
Beginner(At least have the knowledge of C/C++)(45
days)
Start Learning C++
Topics need to be covered -
Now you are set for solving problems.
Start solving problems from Codeforces
Try solving problems sequentially.Target Problem Count: 200 Problems
Pre-Intermediate(Can solve CodeForces A, B)(90
days)
How to increase Rating on Codeforces:
First of all, you have to identify your comfort zone. That means you have to identify which problems you
can
solve more comfortably than others. For example, one might find a 1200 difficulty problem easier to
solve
but might struggle with 1300/1400 difficulty problem. So he/she should try solving 1400 difficulty
problems.
Note that, solving more and more 1200-rated problems won’t gonna change your skill. You have to choose
such
problems which will be challenging your brain.
Now how you should approach a problem:
Suppose you
have selected a problem that has 200 more difficulty level than your comfort zone,
You will try solving this problem for the first 30-45 minutes. If you somehow failed to come out with
any
logic, then read the first paragraph of the editorial on that problem, don’t read the full editorial.
Then
after taking some insights from the editorial, try solving the problem again. If you again fail to solve
that problem, then this time read the full editorial, then try to solve this problem. If you fail again,
then this time try watching some code written by famous coders(i.e tourist) then try to implement that
code
after understanding that code. Believe me, this works like magic.
Participate in at least 1 to 2
virtual
contests each day. Try participating from 8:30 to 10:30pm.
A piece of advice, do not engage heavy algo problems until you can solve codeforces A, B and often C.
Intermediate(Can solve CodeForces A, B fluently, and
C sometimes)(160 days)
Advanced - 0(Preparation for ICPC/NCPC/IUPC)(300
days)
Advanced - 1(Top 50 in ICPC preliminary)
Advanced - 2(Top 25 in ICPC preliminary)