My Journey of Competitive Programming

Hello Beginner,

Today I want to share with you my competitive programming journey. Competitive programming means solving problems in different platforms. There are many benefits to do this. Even many companies directly select candidates through their coding profile. And you can also add this profile in your resume It gives a huge impact. So let’s start.

When I was in first year in college I started CP in hackerRank. The only programming language I knew was C language. I got 4 stars in C language in hackerRank. My confidence was too high because I was not aware about other platforms. Then I started CP in codechef I solved there more than 200 problems. It was more difficult than hackerRank but later on I enjoyed solving problems with the code chef. Then I come to know data structures and algorithms are most important thing to do. So I learn a new language and it was python. I do OOP and data structures in python. Then I again started with hackerRank. Finally I moved to w3wiki for solving problems. I solved more than 250 problems on GFG and am currently solving its POTD. GFG has user friendly and attractive interface. The quality of questions is also very good. Then I jumped to Leetcode. It is a little bit difficult but here also I have solved more than 150 problems. Level of questions was too high for me. Leetcode profile play a vital role in placements. We can get hired from our Leetcode profile. Currently I am only solving POTD on GFG and Leetcode.

Here I am sharing some steps to master CP according to my learning.

Step 1 :

Learn a programming language. You can start with any programming language but choose one in which you can learn OOP(object oriented programming). You can choose any language C++, Python or Java. No need to learn all.

Step 2 :

Start solving basic problems like condition based, array and string. You can start CP(competitive programming) from hackerRank, codechef or GeekForBeginner. As you become familiar with how CP actually works, you can level up and start solving problems with more difficulties but in the same topics.

Step 3 :

Now it’s time to learn Data structures. Learn data structures like Stack, Linked list and Queue in your chosen language. And start solving basic problems on GeekForBeginner. Then learn graphs and trees and again solve problems in the online platform.

Step 4 :

Learn algorithms and how to calculate time and space complexity. Do more practice.

Step 5 :

Practice practice practice !!!

Start doing POTD(problem of the day) on GeekForBeginner and Leetcode regularly.

Don’t forget consistency is key.