ACgo's blog

By ACgo, history, 6 years ago, In English

How you rank current CP websites?

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

| Write comment?
»
6 years ago, # |
  Vote: I like it +175 Vote: I do not like it
  1. AtCoder (best problems)
  2. CodeForces (good problems and very regular contests, also b̶e̶s̶t most active community)
  3. CSAcademy (good problems, could be more frequent contests)
  4. TopCoder (fine problems, but super confusing site interface, problem submission and irregular contests)
  5. HackerRank (personally, I think the problems are a little substandard)
  6. CodeChef (again, imo poor problems (I dislike the multiple test cases in one input) and issues in the past with postponing/cancelling contests)

I've probably missed several.

»
6 years ago, # |
  Vote: I like it -10 Vote: I do not like it
  1. USACO — the best problems
  2. Codeforces — good problems but the contest times are never good for me

Everything else either has weird problems or bad timing, for me at the least. Obviously I might not be the best judge of the problem quality.

  • »
    »
    3 years ago, # ^ |
    Rev. 4   Vote: I like it +5 Vote: I do not like it

    USACO problems, particularly older ones by only a few years, are not the best as far as OI goes, at least on average, though there are def some nice gems. As much as I like tree and dp, those topics are a bit over saturated too. The past few years have had higher consistent quality tho. I think 2017-2018 season is unbeatable, at least for plat. I also learnt most important techniques through USACO problems.

    Actually I change my mind about the first sentence, most OI (and cf too) have increased on average quality quite a bit recentishly. Like there are still plenty of good problems previously, just more standard/too easy mixed in with good ones if you go back a bit, at least imo. Still def worth someone's time tho.

»
6 years ago, # |
Rev. 3   Vote: I like it +60 Vote: I do not like it
  1. CodeForces
  2. AtCoder
  3. CSAcademy
  4. TopCoder
  5. CodeChef
  6. HackerEarth
  7. HackerRank

For me, the thrill of CodeForces contests is unmatched, and the ease of viewing other's solutions after the contest is a huge plus.

»
6 years ago, # |
  Vote: I like it +37 Vote: I do not like it

Regarding quality of problems in my opinion:
0. AtCoder — by far the best problems
2. TopCoder
3./4. Codeforces/CSAcademy
I don't participate in contests on other websites.

However Codeforces has by far the best website, there is community here which is nonexistent elsewhere (because of blogs) and great contest resources in gym. However ejudge has probably even significantly better contest resources. And TopCoder's website is super counterintuitive.

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

    Thanks for reply. I checked last few AtCoder contest and their problems seems like brain teaser with constructive and ad-hoc solutions. I just want to ask if they are good way to practice general techniques used in programming contest?

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

      It depends on what you are aiming for. Typical medium/hard problem from AtCoder requires much more thinking and less code than typical medium/hard problems from other sites, so if someone's goal is to have fun by solving problems requiring thinking then it is the best site. If someone likes to say "this is a programming contest, not an algorithmic one" or "I don't get why people don't learn SSE these days which is more useful than e.g. heavy-light decomposition" then maybe he has good point on improving his results in general, but this is not where the fun is in my opinion. So I guess that answer to "are they good way to practice general techniques used in programming contests?" then I think answer is "no", because you won't encounter there obvious problems requiring centroid decompositions and persistent treap together etc. which is in fact a good thing in my opinion.

»
6 years ago, # |
Rev. 2   Vote: I like it +34 Vote: I do not like it

Please correct me if you find anything wrong.

Hackerrank, Hackerearth won’t be considered because they are not particularly trying to build contest platforms but rather focus more on getting people jobs, etc.

Atcoder — Despite of a lot of contests the problem quality of atcoder doesn’t even seem to flinch a little. The site interface is clean. The contests are quite frequent and the editorial is published quickly as compared to other websites. There is no way to interact with the community but most of the after — contest discussions (no matter what online judge) are carried out on Codeforces anyway.

Codechef — The reason that most of the good competitors don’t compete on Codechef is quite obvious (I think). The number of implementation problems is increasing and idea — based problems seem to be lost. Competitors are mostly Indians. Sometimes the judge performs poorly.

Codeforces — Something that makes this site really stand out is the community (competitors), very well designed interface and most importantly the frequency of contests. This is where you get to compete with the best competitors from all over the world. (Lot of people participating on atcoder and codechef are Japanese and Indians respectively. This is most certainly not the case here.) Codeforces GYM is quite helpful training resource for teams.

Csacademy — A relatively new contest platform, problems are good but the frequency of contest is just too low as compared to other judges. Interface looks a little clumsy at first but is actually good once you get used to it. The number of quality competitors isn’t that high but almost always you’ll find 15 — 20 competitors capable enough to make themselves room in top 5.

Topcoder — Let’s not talk about interface and usability and absurdness for a while :P The div 1 500 problems are mostly beautifully written. Some 250 pointers seem quite tricky and not — so — straightforward as well. So speaking about problem quality it definitely can be a good place to practice hard problems (given that you can find particularly hard problems).

SGU online judge and Timus online judge are specifically known for their problem quality so you can practice there if you want quality problems.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -23 Vote: I do not like it

    "Competitors are mostly Indians and the judge performs very poorly." How are the two statements related?

    • »
      »
      »
      6 years ago, # ^ |
      Rev. 2   Vote: I like it +8 Vote: I do not like it

      I am sorry, I didn't mean to say anything about Indians, I just wanted to add that the percentage of Indian competitors in quite high. I have corrected it in the comment.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I'm glad others share my frustrations with TopCoder. I can't speak much about the quality of their problems, because their site was almost unusable for me. It took a long time to even load a single problem, the ui is very poorly designed imo (very small vertical space to write code), and I disliked how they wanted you to write your solution (seems more geared toward Java users). Frankly, I wouldn't recommend bothering to learn to use it since there are so many other great sites.

Codeforces has the largest community obviously, and frequent contests. I like to use the site code-drills.com to recommend problems, which only works with codeforces.

Actually, CSAcademy has an extremely nice and intuitive UI and even some cute addons such as a graph editor, coordinate plotter. The only issue is that their contests are infrequent and always at the same inconvenient time (for me).

For Atcoder, I have not participated in many contests, but the problems I have seen have been excellent quality. One minor issue is that at least last time I checked, you have to copy-paste your code in, not just upload a file.

I also recommend USACO problems. The bronze/silver/gold levels are a great way to learn new topics if you are just beginning, and I have found the platinum problems challenging and interesting. Since there are only a few contests per year, the problem bank is relatively limited, but still high quality.

For Hackerearth, I will say this site helped me learn some data structures even though it's not really geared towards contests, as they often have tutorials and some straightforward implementation problems to help you practice what you just learned.

»
6 years ago, # |
  Vote: I like it +92 Vote: I do not like it

Atcoder — superb quality of problems that require thinking more than implementing. Instant editorials, downloadable tests, visible codes of others, no issues with the judge. Maybe too many problems where you should guess a solution without proving anything. And I'd like to see a list of all problems with upsolved ones being marked green or sth. Contests are quite rare, at least the main ones (AGC).

Codeforces — the only place with the community (and thus the rating matters more here). I can't imagine doing CP and not visiting Codeforces regularly. The biggest set of problem setters and thus the biggest variety of problems (I think). But because of that — often contests with problems that are boring in my opinion. Frequent contests and unfortunately quite frequent issues with the judge. Maybe I have this feeling because CF hosts more contests than other platforms, it's hard to say. Codeforces is improved constantly (e.g. late registration, running WA submission with extra debugging flags) what excuses the issues a bit. Good time zone for Europe. Polygon. GYM.

CSAcademy has very good problems. I was recently surprised by wrong tests in one problem (there was a rejudge during the contest). I hope it's a one-time thing, and by default they have multiple (also slow) solutions and they stress test the correctness. I compete there every time I'm able to.

Topcoder is fine once you are familiar with the arena. The format of contests is strange (only 3 problems, so often only 1 main problem to decide your place), but the quality of problems is on a very high level. The topics are close to atcoder, a bit forces by the input size limitation.

If you prepare for IOI, don't focus on atcoder or topcoder. They are too mathy.

For all other platforms, the issue is that problems are often standard or boring. That's at least my impression, I haven't competed in any of those for a while. I still recommend competing if you see a good problem setter.

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

    If you prepare for IOI, don't focus on atcoder or topcoder. They are too mathy.

    Which websites would you recommend?

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

    Isn't Atcoder a good place to train for IOI because it's in Japan this year?

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

      Is the country responsible for preparing problems? I thought there is some committee.

      And if people from Japan will prepare problems, it means one should solve old Japanese national olympiads, that's for sure.

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

        I always assumed that the host country is somehow responsible for the selection of the tasks. Does anyone know how it works?

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

          Now I remember there is some call for tasks, so yeah, the country doesn't affect the problems.

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

    Aren't ioi-style problems considered to be more mathy? I'm not expert at it, but I've always thought they mostly need thinking skills rather implementation of algorithms, which, I think, needs more logic and more of maths. Isn't that true?

  • »
    »
    6 years ago, # ^ |
    Rev. 2   Vote: I like it -6 Vote: I do not like it

    deleted

»
6 years ago, # |
  Vote: I like it -6 Vote: I do not like it

I think topcoder should be #1.

Arguments against topcoder is that the interface is difficult, but navigating difficult algorithmic problem is just like navigating the difficult interface anyways. If you can find the topcoder arena that is an accomplishment in itself. After correctly setting it up you will realize other challenges are so miniscule compared to this.

»
6 years ago, # |
  Vote: I like it +160 Vote: I do not like it

My ranking:

»
6 years ago, # |
  Vote: I like it +43 Vote: I do not like it

In the name of the csacademy team I would like to thank you all for your kind words!

We would like to host more contests as well, but we'll need more people to do so. At the moment there are only 2 active people on CSA. bciobanu and myself. But we hope that you'll enjoy our contest in the future as well!