Regarding drop in the rating of several users in August Challenge 2016.......

I want to know how codechef check cheating in codes because according to codechef my solution for 1st problem was matched with someone else’s code… There are 5000+ submission on 1st problem and as everyone know the code just contains 2 lines and a condition so i don’t think there would be 5000+ ways to write same two lines so that codechef won’t recognize them as similar.
Except that since same problem exist on spoj also so it increases the possibility of similar solution…
So i think codechef should recheck submission because i have seen submissions which are more similar than my submission and could be detected simply by string matching but still they are not detected.

5 Likes

Yes. Admin, please look into this matter.

2 Likes

"Here’s the admin’s post on the matter,

For long, we have had reported cases of cheating and to be honest in the beginning we chose to ignore them, assuming that those who cheat are small in number and only harm themselves, while the rest continue to learn. As we started growing, the participation increased. And the reported cases also went up. In the meantime, a new rating system was implemented which resulted in making people take pride in their standings in this system. We tried to reason out our stance on cheating, and during the course of these discussions we figured out that we must try and do something to make the contest fair to all. We started banning those who have been reported for cheating after disqualifying them from the contest which resulted in a good fall in their rating points. We did not stop there. We tried calling and talking to each one of those who were banned to figure out why they did so. We also lifted the ban of a few of them after they confessed their mistake and pledged to not do it again.

Some of our findings as a result of this discussion are:

1.)People use online IDE’s being ignorant of how to protect their submissions. This has been the most commonly admitted reason.

2.)People get other’s codes from the online IDE’s and submit the same as their code.

3.)People find a solution on some online resource and use it without giving any attribution.

4.)People have been found to use multiple id’s to participate in the same contest. They make submissions from both the id’s

5.)People discuss strategies and implementation and also share code amongst themselves and submit the same code.

6.)People obfuscate their code to try and avoid being caught.

7.)People who have been found cheating do not belong to only one particular nationality. We have found people from different countries who are also involved.

8.)Some people have also been mistakenly being reported.

Our investigation and the existing process of verifying and banning those who have been found guilty has resulted in a long delay in this contest’s rating calculation and has also made us err in our bid to be quick and fair. We also realized that this mode of our working is not very scalable with increasing users, submissions and reported cases.

To avoid this in future we’ve penned down some guidelines, which answers a lot of questions associated with how CodeChef is going to deal with this process.

Ratings will be calculated within one day of the completion of the Long Contest.

The Rating calculation will take into account the cheating cases reported in the previous contest. Those found guilty in the previous contest will lose rating points. The ratings for the previous contest will be recalculated considering these cases. So technically each month’s rating will be calculated twice. This is to prevent the delay in rating calculation because of the frequent reported cheating cases. E.g. ‘X’ caught in cheating in July Challenge 2013, will see drop in rating at the time of rating calculation for August Challenge 2013. This may result in a minor rise in the rating points for the rest of users during the recalculation.

The accounts found guilty of cheating in any contest will be penalized in rating points. They will be considered to have participated in the contest without making a single correct submission.

Any account found indulgent in cheating will be immediately banned from the CodeChef community and will not be un-blocked unless found not guilty. The onus of disproving this will rest with the user who has been reported. Those found guilty will lose rating points in the subsequent month.

We are also considering installing a plagiarism detection software in future to help us in verification of suspected cases.

We urge everyone to go through the Code Of Conduct that one is expected to follow while being a part of this community."

1 Like

rishab.jain9196 i think you should watch accepted submission on first problem in august challenge … :stuck_out_tongue:

2 Likes

The same thing happened with me and my rating for August was dropped, when I spoke to Codechef on the phone, they said no matter what the rating will not be restored no matter how much I tried to convince that I was not involved in wrong doing.

Same happend with me. I got an AC code within 10 minute of the start of contest. (1st Prob) and it somehow got matched with someone , who submitted it 4 days later . Still , they without any consideration dropped my ratings to 20000+ from 6000. Talked to concerned person, he simply told to use some exta code , rather unique variable name , tempelate from next time. Try making some different tempelate, hope this helps . If ratings could inrcrease again , admin please recheck mine too!!

1 Like

It was just hard luck. You could try to send email to codechef and ask for rectification of this error. But most probably, once the ratings are released they are not changed. Their plagiarism checker is accurate but may make mistakes sometimes.
PS: I know what the accepted submissions are on the first problem of a long challenge. I was just trying to redirect you to read the rules and regulations of the same.

@mkfeuhrer: I think you mean rank by ratings.

I think codechef should remove the later submission if two of solutions are same…

2 Likes
//