Checkout the first three parts of the series here:
If you have followed the first three parts of the series, you’d now be very well acquainted with the world of Competitive Programming. By now, you’d have started competing already. So, what are the further steps you can take to become a kickass competitive coder?
– Contest in all the contests that you come across
– Continue the practice in various online judges
Regarding the contest, here are the most popular places you can contest online.
Topcoder is the best and the most popular online judge with respect to contests. They have a variety of contests going on every now and then. Their SRMs are the most popular ones. There are various categories of contests, and more so, the prize for the contest winner is money.
Practicing with past SRMs and contesting in the new SRMs whenever they conduct these matches, in Topcoder especially, will give you a great edge over the others, especially when you contest in the other websites mentioned below.
Codechef is one of the two most up and coming online judges. Codechef has already established itself as the popular online judges in the recent times with its usage of SPOJ. Codechef is especially known for offering two formats in terms of its contests.
Long contests – are usually 10 days long. You are given 10 problems to solve, in the order of increasing difficulty.
Short Contests – are usually two and a half hours. You are given 5 problems to solve within that time.
If you don’t prefer spending 10 days on a contest, you’d be better off sticking with short contests.
Checkout the Codechef FAQ. It should be a good place to begin with familiarising yourself with the codechef system and its ranking methodology.
Codeforces is an online judge that is based in Russia originally. Right now, Codeforces is the most consistent online contesting site that hosts SRMs every week. Their contests are very popular these days and they are a growing community. They also have put up in their archives, all their previous contests’ questions and you can solve them, study the editorials, learn where you go wrong and correct yourself.
Egor and Petr – World’s top 2 Competitive Coders are problem setters there.
Hackerrank, as I mentioned in the previous blog post, is the most used platform for programming interviews. They also conduct contests. The contests in Hackerrank may not be as popular as the other contest websites, but they are still useful as a means of honing your skills.
5. Hacker Earth
This contest site is becoming more popular in recent days with respect to job interviews. A lot of companies are hiring through contests they host in Hacker Earth. Some of the ompanies that recruit through Hacker Earth are Amazon, Adobe, Trilogy, InMobi, Flipkart, ThoughtWorks, etc. They also host some other contests with goodies for prizes. But, a lot of people have gotten a job through this site in tech giants like the ones I have mentioned above. Their contests are of different categories. You can check them out and choose the ones you prefer.
Needless to say, this is one of the most popular, happening contest that’s conducted by Google every year. Programmers from all over the world participate in it. You will learn a great deal by participating in Google Code Jam. Gennady is the reigning champion as of now.
The following resources will also be helpful.