urbanist's blog

By urbanist, 9 years ago, In English

Lately I have been participating in various competitive programming contests online, and there are some major platforms available now, that were not there several years ago. I have decided to compile a benchmark for these platforms: hopefully it might be useful for other contestants as well. This list is by no means exhaustive, and more contests can be found through the following link, although information provided there is not always complete/accurate: www.hackerrank.com/calendar

CATEGORYCodeForcesTopCoderHackerRankCodeChef
SHORT CONTEST NAME & DURATIONCodeforces Round: 2 hoursSingle Round Match (SRM): 1.5 hour101 Hack: 2 hours,
HourRank: 1 hour
Cook-Off: 2.5 hours
# OF DIVISIONS2211
# OF PROBLEMS PER CONTEST535 and 4 respectively5
PARTIAL POINTSNONOYESNO
ACCESS TO COMPETITORS' CODEYES: HackingYES: ChallengeNO: only after contest, and only to those problems that you have solved as wellNO: only after contest
PROBLEMS AVAILABLE IN:English, RussianEnglishEnglishEnglish, Russian, Chinese, Vietnamese
COUNTRY OF ORIGINRussiaUSAIndiaIndia
...

Leave a comment if you think I should add more information to this table, or perhaps there are some other good platforms that I don't know about yet.

Personally, I prefer HackerRank-style competitions, because they grant points for partial solutions (similar to IOI). Thus, even solutions that are not the best in terms of time complexity can help you move up in the ranking, as long as they are correct. This is not the case with other platforms, where BOTH correctness AND time efficiency are essential.

  • Vote: I like it
  • +36
  • Vote: I do not like it

»
9 years ago, # |
  Vote: I like it +21 Vote: I do not like it

HackerEarth is also hosting several different types of contests (like monthly easy and clash); they don't have rating system yet.

In case of HackerRank part about "access to code" is not exactly true — for some contests code is open (and you can download it from leaderboard page), for some other it isn't. I don't know if there is any system behind it, or it is just a pure random :)

  • »
    »
    9 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    I am waiting rating on HackerEarth for month, I didn't know they don't have rating :D

    Also I want to mention Codechef Lunchtime — they have subtasks.

    Now I will talk about HackerRank.

    Possible HourRank will have sometimes 3 tasks and that part I mention to HackerRank guys at start. The contest with three tasks is harder for preparing because difference between tasks must be bigger. You think more about subtasks and smaller limits. Everybody should spend 1 hour of solving something good and enough interesting...

    I am not sure but I think that HackerRank don't have anything with India. I think it is USA site and creator is from Bangladesh.

    About random code access I don't know anything. So far I have thought that is only possible if you are problemsetter :D

    For me the best option is partial scoring with partial hacks :)

    • »
      »
      »
      9 years ago, # ^ |
        Vote: I like it +11 Vote: I do not like it

      Both of HackerRank's co-founders are from India, and one of their offices is in Bangalore. The other one is in Palo Alto.

  • »
    »
    9 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Thanks for the reference to HackerEarth. I will check it out, and maybe add it to this table later.

    As for HackerRank, I've tried to see other people's code through the leaderboard, but it doesn't even list problem scores separately... I don't understand how you were able to access other people's code there.

    • »
      »
      »
      9 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Here I have download button near every nickname; and in this one there is no such button. Maybe they have to turn it on manually, and sometimes admins forget about it :) Or maybe there are some specific reasons for such difference.

      • »
        »
        »
        »
        9 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        I have figured this out: these buttons are only accessible for problems, that you have successfully solved. I will modify the table accordingly.

»
9 years ago, # |
Rev. 2   Vote: I like it -19 Vote: I do not like it

HackerRank has 5 divisions -> O(1), O(log N), O(N), O(N^2) and O(2^N) but yes unlike TopCoder and CodeForces there are no separate contests for these divisions.

I think we can see others solution on HackerRank only when we have completely solved that problem during the contest. I am not sure though.

  • »
    »
    9 years ago, # ^ |
      Vote: I like it +39 Vote: I do not like it

    "HackerRank has 5 divisions -> O(1), O(log N), O(N), O(N^2) and O(2^N)"

    this is like saying codeforces has divisions like newbie, pupil, specialist, candidate-master...