Get Started with Codeforces
It is needless to say the importance of competitive
programming in any Software Engineer’s journey. Most of the beginners have no
idea how to use Codeforces and end up wasting a lot of time on it. Most of them
also get demotivated when they are not able to solve problems and end up with
the thought that they are not capable of doing it.
Codeforces is one of the best platforms for competitive coding and is usually known for its short challenges/contests where programmers from every corner of the world participate. Here you can practice problems from very beginner level to very advanced level. But most people don’t know how to start with Codeforces and how to utilize it fully.
So, here are the few tips that can be followed:
- If you are a beginner in competitive coding then don’t directly jump into the contests. First, go into the PROBLEMSET option and set the difficulty level from 800-1000. After that, all the problems of that difficulty level will appear in front of you, and start solving the problems from there. Then solve at least 30-40 problems to get familiar with the type of questions and platform. As soon as you become familiar with those problems you can start with the contests.
- Try giving all the contests (there are 2-3 contests every week). Initially, it is possible that you might solve 1 or 2 problems in the contests, or it also might happen that you were not able to solve even a single problem, but you don’t have to lose hope and keep practicing the problems. You can’t become the “top” coder in 1 or 2 months. It requires high consistency and a lot of practice.
- As contests are time-bound, so you also have to focus on them and should try solving problems as fast as you can.
- Watch editorials only if you have given sufficient time to that problem and don’t watch editorial completely, first see the tags and then start thinking about the problem again. Even after then, if you have no idea how to solve the question then go for the editorial.
- After each contest, try to up solve the remaining problems of the contest. It is really important as you will be able to learn many new concepts and tricks from it. For those who don’t know, up-solving means solving the remaining problems of the contests which you were not able to solve during the contest.
- After solving any practice problems look at solutions of other users as well as you will learn different and easy approaches from those solutions which will surely help you in further problems.
- Keep increasing the difficulty level of the questions as soon as you become confident in solving the questions of a particular difficulty level.
- You can also add the tags if you want to practice problems related to a particular topic.
- As you will do more and more problems your confidence will keep increasing and if you will remain consistent you will surely become a top coder.
- Lastly, BE CONSISTENT and KEEP PRACTICING.
Important Tip:
One most important thing to remember is – never lose confidence as sometimes it will happen that you might find some questions which will seem difficult for you and you will have no idea on how to solve them but never get scared of them. Give adequate time in trying to solve the problem and look out for editorials or take help from your seniors if you get trapped in a particular problem. But don’t get demotivated and never think you can’t do the questions as nothing is impossible.
About the Contests:
In Codeforces, the contests are very frequent. There are 2-3 contests every week and the duration of each contest is 2-3 hours mostly. Some contests are available to you according to your rankings as well. If you are a beginner then you can give contests rated for Division 2, Division 3, and Division 4. Your rating will increase or decrease on the basis of problems you solve in each contest and in how much time you solve it. The lesser time you take for each problem, the more will be your rating.
Here are some useful tips if you are a beginner on Codeforces:
- Try some easy problems from the Problemset by arranging them in ascending order of difficulty. This will help you get a hang of the submission system. Even the best coders waste the most time figuring out the works.
- You are unrated till you participate in rated contests. Beginners should participate in Division 3 contests and work their way up for the best results. Unless you're a pro, in which case drop me a message and I'll come read your blog.
- Save good problems that you find to work on them later. You can click on the star next to a problem to favourite it and access it any time by visiting your profile and clicking on "Favourites". You don't have to keep a hundred tabs open in Google Chrome at all times.
- Find a friend on Codeforces and friend them by clicking on the star next to their profile. You can send them messages and maybe view their activity (not sure about this). This will be useful in forming teams later in contests that allow team participation. Don't waste time taking your Whatsapp conversations onto Codeforces though :P
- Put up a cool profile picture. Alright, that's not going to help, but it's fun and gives you some personality :)
- Keep a blog and write about the things you learn once in a while. This will not only help you learn better, because teaching is the only true way of learning something, but it's also going to make you feel like a proud little scientist when your ratings have shot up in the future and you want to come back and feel all nostalgic. A blog will also help other people.
Comments
Post a Comment