Thoughts about ICPC 2017 Online Round

Hello everyone,

I happened to participate in the ICPC 2017 online round yesterday, and I just thought I’d record my opinion on this forum.

  1. First and foremost, the contest was not at all conventional. There was a stark difference between last year’s Online Round(which had an assortment of problems from DP to Graphs to Greedy) and this year,which was just high on math. Was this comfortable for the majority? I believe not. So, do you call the contest bad? No. Recently, there seems to be a cognitive definition for contests in general, and anything that doesn’t follow this pattern seems to be frowned upon (Case in point : Codeforces Round #444 (div2) ). This contest, for sure, thoroughly emphasized on why one has to be strong with mathematics to excel in programming.

  2. With regard to the issues of cheating and discussion on StackExchange, well, I guess nothing can be done about it. Its going to be extremely unfair to the ones who actually solved it, yes. But I don’t think there’s any plausible solution for such an issue. I saw quite a few people requesting for a recontest , but honestly, that’s never going to happen guys. Issues did crop up last year as well, but they were simply overlooked. I do hope there’s some other way out of this menace, but a recontest will never ever workout. To the ones who might accuse me of supporting “no recontest” for selfish reasons, nope. My team may not make it to the regionals this time for all we know.

  3. Why are the solutions hidden for all teams? I request @admin to make all solutions public, and also to add the problems to practice section along with editorials if possible.

  1. I think taking into account precision related issues is a skill needed to solve many real life problems too and does apply in competitive programming as well. Those who say it gives correct output on their local machine, its not the organizer’s fault! On codechef ide, arrays are initialized to garbage values but in local machines it gets initialized to 0 and thus produces different output a lot of time (This happens for codeforces too) and this isn’t a sufficient enough a reason for a recontest. Also, I cannot be accused for supporting “no recontest” for selfish reasons because I am a school student, I am just giving my personal opinion. Even then a google form was created for those people who were affected to take into account their “unfair” disadvantage. For those who ere affected by internal errors, that seems truly disadvantageous to me but a recontest is too much to ask for.

  2. So, people really think teams won’t cheat if there were a recontest?

  3. No idea, I think they will be public in a while.


Btw I solved the first 3 problems on at most 2 tries and didn’t face this issue because I have faced this issue before and had gotten my lesson. :stuck_out_tongue:

Thats great man! Congrats! :smiley:

Well, here’s my take on these points.

1.Yes, no reason why a contest should not test math.However, I have a different opinion on the kind of questions.As to codeforces #444, I felt that the questions were more of the “brute force” kind.A good question, according to me, should have one central observation, which when thought out, the rest shouldn’t be difficult.Of course, one or two brute force problems can be excepted.

I couldn’t see any such question in #444.In yesterday’s online round, I felt that the questions were not exactly demanding elegant observations(first three) but still, this is just my take, and of course questions can be set this way.

2.I feel cheating, though only few people might have done it, becomes more probable when questions like compression algorithm are made, or in other words, more “mathy” O(1) answer questions are included in the problem set.Of course, I am not saying that the solution to this problem is to avoid such questions.
But math can also be tested with questions which demand an elegant and not-so obvious observations.
Again just my take.

3.Again agree, the solutions must be made public soon.

Overall the contest was OK, but I felt that it being a programming contest, it should not be just math, the kind of math which is more about doing than observing(I still talk about the easy three, I have not solved the last two). And to clarify, I had no issues with the submissions, no undue penalties, but again in question stddev, absolute error of 10^(-6) does not seem a good idea for the checker.Relative error makes more sense for large numbers, since you only wish to check whether the contestant has got the formula for E(n,k) right.


“The solutions must be made public soon.”

Even 2016 online round solution haven’t been made public yet, @admin. :3

@adiabhi, forgive me for my noob-ness, but could you tell me how relative error and absolute error make a difference in precision?

@dushsingh1995 , yes! Its bizarre that they don’t make the solutions visible even after a year! I hope the admin or one of the moderators look into this.


Remind me once the final ranklist is published. I will put it across her again then. Currently thy are busy with things.

@vijju123 please look into my solution on GSS1 that I posted under the Thread “WA in GSS1 spoj…”

1 Like

@vijju123 Sure!

Ohk, sorry, didnt noticed! :slight_smile:

Adding In continuation…
1.) Questions was no doubt good, and interesting, which required logical analysis and arguments to solve. While at the same time contestant also expected questions where they are required to use their coding skill, but in question STDDEV as one could figure out that no coding skill was required to solve that.

2.) Regarding possibilities of cheating taking example of question COMPEXP it was nice required that skill of permutation and combination (another Math Skill) to come up to a certain formula. Now the crux lies that it was third most solved problem. Is it not possible that this formula would have been shared among the contestants, what plagiarism check would detect cheating for single line formula.

3.) Now coming to the contestant who reached the formula but as seen in recent discussion on the precision issue. 2 out of 5 question required precision handling skill, which means these are more important than DS and DAA.

Although 4th and 5th most solved question definitely required coding skills.
Also it is understood that in 3 hours contest with 5 questions all topics cannot be covered.
There is a strong believe in codechef that chefs @admin will manage that nothing unfair happens.


There is a very nice binary search based solution for STDDEV. Also, it takes one a bit of fiddling with formulas to come up the right expression. This is the kind of problem which can have many possible ways of solving it up. It’s really weird to expect each problem to have some sort of coding skills involved. For a second problem, I think this is not a fair criticism.

1 Like

@akshayvenkat97: We can only publish submissions made during the contest by the permission of regional directors.

Well, here she comes to make things easier for me :3

Yes, sir there are many possibilities, but this might have made difference.
Overall it was an humbling experience.

@admin Can we get the intended solutions please? My solution is based on picking just 2 variables and fill the N length sequence with those. I would like to know what the binary search solution is.

@ista2000 Here is the solution link.

You know what this can be solved !!! This cheating issue for the preliminary Round can be solved.

How ?

  1. Set questions that are Algorithmic (instead of mathematical) , having long codes and a lot of Test Cases.

Benefits -
1)This type of question wont be answered on any of the online sites like etc withing 3 hours of time.

  1. Even if it is answered, then it would most probably be answered at the end of the contest on these online sites, like at 2:00 hrs of the competition , then those people who are negligent to think will eventually copy the code , as a result will end being caught under plagiarism.

3)Moreover, Having questions with long codes and good edge cases will make the contestants busy to think about solution rather than discussing on the college groups.

You can put the math questions on the regional rounds where there is no internet and no cheating can be done(only one’s knowledge and ability to think will be tested).

Yes, making such questions is tough.
So , things can be done , just don’t ignore the hardwork by saying “Nothing can be done” .