Cheaters on JULY16 POLYEVAL

I found several questions regarding the POLYEVAL problem at CS.stackexchange.

  1. http://cs.stackexchange.com/questions/60239/multi-point-evaluations-of-a-polynomial-mod-p
  2. http://cs.stackexchange.com/questions/60364/can-we-evaluate-a-polynomial-of-degree-n-modulo-m-at-all-m-points-faster-than-Θ
  3. http://cs.stackexchange.com/questions/60498/polynomial-evaluation-at-the-powers-of-primitive-root-of-a-prime-number (now deleted by its author)

I stress the point that discussing a problem on a live contest is forbidden.

How to prevent people do cheat?
In my opinion, the current rule statement is maybe not clear enough. Can this be improved?

For your information, you can solve this problem by mixed-radix FFT (consider the prime factorization of 786433-1).

18 Likes

>How to prevent people do cheat? In my opinion, the current rule statement is maybe not clear enough. Can this be improved?

You can kill someone who cheated and post pics. That would probably discourage most further cheaters.

In all seriousness, there’s little more that will prevent cheating - people do not cheat because they don’t understand that it’s completely unfair (consider the level of intelligence necessary to write a program), but because they simply do not care at all. It gives them an advantage and nothing else matters.

Here is an example: billboards in South Africa. (You can find more at this blog). Look up “necklacing” and rape statistics, you’ll see how well they work. Without a proper crime&punishment system, no amount of niceness will stop some people.

What is done: code similarity checking. What can be done: tracking this type of questions, quickly deleting them and banning the users; of course, this requires cooperation with other sites. What can be done 2: Electric Boogaloo: tracking the people who did this, e.g. by IP, and keeping a blacklist (of course, there are problems with privacy here).

If cheaters are made an example of, this will somewhat discourage others.

>For your information, you can solve this problem by mixed-radix FFT (consider the prime factorization of 786433-1).

Did you use FFT when solving this?

6 Likes

FYI, point number 7, 8, 9, 10 according to Codechef Code of Conduct address the cheaters and are sufficiently clear.

@xellos0, I don’t think second idea is feasible as there are people sharing networks or even computers (universities etc). Appointing some ‘inspector’ in the long challenge to search the “keywords” for the problems on the online forums and to report them would be a good tradeoff.

I believe people cheat because ratings are highly overrated. One successful cheating should not increase the rating too much (alternative rating system), as this generally might be the driving force to cheat.

We also should not forget there have been false cases of plagiarism in past, so blocking repeatedly proved cheaters would be a good idea.

5 Likes

Cheaters will have to cheat forever… This is actually a bad practice… Once they start cheating this becomes a habit which might help them to score high but at the end they end up with poor knowledge that eventually makes them to feel shame in a community…
Please ensure that you learn from what you are doing… and don’t try to waste your valuable time that needs to be utilized…
If you are doing something learn it in a better rather than cheating for some few points…

3 Likes

The rules are unclear. I had figured out that we have to use FFT, studied CLRS and all, and had understood the algorithm from various sources. However, I had a problem implementing the algorithm. It required something like this: alt text

I was just not able to figure out how to pass the polynomial with which remainder has to be taken, and hence posted a blog on codeforces as to how to pass use this polynomial to divide, and again there was some guy who objected, so I deleted the blog. However, I did not post the original question, nor what exactly I was trying to do, just a middle step. I do not know if even asking some middle step is cheating.
Like what if you have a question which makes use of some variety of concepts, for example if in a problem, you know you have to first make a table using DP, and then use matrix multiplication on that table, and if you ask how to implement matrix multiplication, then will it be cheating?

2 Likes

Well, the question is exactly similar to CLRS Chapter-30E :slight_smile:

I once got a hint asking PM from someone and I replied, “I couldn’t because it is a rule violation”. Then, he/she replied, “I didn’t know that that is a rule violation”. It is a possibility that he/she was lying but I optimistically believe that some people just don’t know the rule.

Yes. I did use FFT. Note that FFT includes NTTs in my sense.

Yeah no, since a hint can easily be a full solution in some problems. Especially easier ones.

I get those messages quite often, the “hints” I give are usually generic crap like “think, it’s not that hard” (for me) or “use Google”. Sometimes, I just write “reported” and watch them beg.

2 Likes

Idea based on IP is not good. Most colleges/Universities use NAT… So if someone in that college cheats,all users who participated from that college will also be disqualified,which obviously isn’t fair.

2 Likes

True, shared networks are a problem. Oh well, time to hire Internet detectives. (Imageboards are insanely good at this.)

1 Like

“If whatever you are doing is making you learn while you do so, we tend to believe that it is alright.” is the statement that can be found on JULY16 page. So i don’t think what you are doing is wrong as long as you are learning and not simply copying.

Hey all, we will be running plagiarism detection on all the submissions into the JULY16 and when we do that, we will take all these cases into consideration. For now, we are closing this question. Should you wish to report any such instances of cheating, kindly send an email to help[at]codechef[dot]com

Though , cheating is a really bad habit as it destroys the spirit the competition. But , I would suggest to have some hints during the long contest only so that not only it will encourage learning step by step but also prevent impatient people from looking anywhere else for solution. People cheat in Long contest as they have plenty of time and they cant figure out how to solve the problem. So , with hints they can instead try and learn and then reach the solution.