Should CodeChef increase the duration of the long Contest to 2 weeks?

@bugkiller : You should have mailed the codechef during the contest. The user should definitely be banned for posting this on public forums like these.

I think this format is good. I feel the codechef has very very good testers Anton and Hiroto but I think the codechef should us (at least) two testers for each contest to minimize the contest end date and problem modifications.

3 Likes

@javadecoder >> And how would they know the user’s id here, on Codechef? And there is no way you can permanently stop this thing, so extending the contest duration will, yes, increase this scenario further more.

I would say 10 days is just perfect (or even too long).

3 Likes

@bugkiller I could find the user’s id in less than a minute (Google rocks) and know I agree even more that the duration time of long contests shouldn’t be extended in such extreme way. Well what’s the fun in getting points by cheating, I think codechef offers a great opportunity for self achievement and self learning . The contests are actually to test YOUR skills, I really hate people who do this, that might even take the credit away for those who came up with the solutions by themselves
 If one likes to compete this way one should search for team competitions

@junior94 >> How will you find the id of such a user if he/she is using different email ids for CC and for WWW minus CC? :stuck_out_tongue:

1 Like

We like the suggestion of running the contest from a Friday afternoon IST to Monday afternoon IST (gives most (not all) people in the world 2 weekends). We are seriously considering this.

  1. He’s the only user with that name here in codechef;
  2. He solved the problem one day after he asked that question;

Well, @bugkiller I could be wrong and this might be a big coincidence right?

Oh no! March 1 is Friday. So March long contest will start as usual. I was hoping that I will have more time on testing it, especially considering that February is a short month :frowning:

1 Like

1 and 2 are perfect :slight_smile: Good work Admins!

Note that “CodeChef uses SPOJ © by Sphere Research Labs”.
It seems like SPOJ don’t have such convenient possibility to see on what test case you solution is wrong. So the only possible way would be to release the test data after the contest. So that user could figure it out his mistake by comparison of outputs on his local machine. But AFAIK admins several times reject such request of contestants. So unlikely this time someone decide to agree with this point.

1 Like

I see one of the reasons to not release the test data is to avoid copying of codechef problems to other online judges and also not let someone else use problems in some prohibited way.

So from this point of view it seems reasonable to not release the test data.

I understand your point that as CodeChef uses SPOJ for running its system tests its not feasible to release the Run Log but I feel that some alternative way should be developed to provide the user with the test cases due to which the user’s solution failed the system tests. Many a times the user is unable to figure out the bug in his code even after looking at other person’s accepted solution, which sometimes leads to leaving the problem unsolved.

Websites like Topcoder and Codeforces also provide the user with the System Run Log. So I don’t get your point that the problems being copied or used in some prohibited way. Besides that, many of the problem statements in the CodeChef practice problem set have been copied from spoj.pl, so it should not be an issue when some other online judge copies CodeChef problems.

Let admins answer this. I actually don’t remember what is the reason for not publishing test cases. I now see that my reason with copying problems does not make any sense.

AFAIR it is opposite to your logic. Having test data it is too easy to find the bug and this will make worse ability of the contestant to find bugs by themselves.

Note that when you work at some company nobody will provide you with test cases where your program fails. So providing test data here could be disservice.

If you have correct solution you could always try to run stress-test to find the test where your solution gives wrong result. If running this on random tests does not help then you should come up with better test generation plan. This is very helpful ability.

4 Likes

I am saying to provide with the test cases after the contest gets over. During the contest, the participant always tries his level best to find the bug in his code and after the contest he expects that he will come to know about his mistake.

I understand in a company environment nobody will provide me with the test cases, but the contest getting over is similar to exceeding the time limit of finding the bug in my code, while someone else has already checked-in a bug free code. So, before moving to his solution I would like to find the bug in my solution, here the test data would help me.

We will have a separate discussion on virtual contests. :slight_smile:

@anton_lunyov When you work at some company, you won’t even know whether your solution is correct, so perhaps CodeChef should not tell contestants the result until after the contest. On the other hand, when you work at some company, you can discuss the problem with your peers, ask on forums etc.

My point is that coding competitions don’t (and shouldn’t) simulate a work environment, and therefore such an argument is inapplicable to them. What should be considered is whether a particular aspect encourages or discourages learning and improvement.

“What should be considered is whether a particular aspect encourages or discourages learning and improvement.”

If this is the point to adress, then the answer is simple:

Showing test cases to the contestant can make his/her job easier, as by not showing wrong test cases, it forces the contestant to think on corner cases and analyzing code which is a great skill to have either as a recreative coder or working for a company.