I didn't help but notice that almost each contest there's at least some solutions that are clearly incorrect but get accepted nevertheless. For example, discussions for last 3 numbered CF rounds:
- https://codeforces.net/blog/entry/62750?#comment-467811
- https://codeforces.net/blog/entry/62692
- https://codeforces.net/blog/entry/62594?#comment-465649
Sometimes problemsetters/tester could have done better job, sometimes it's seems close to impossible to fail specific solutions in advance without actually coming up with this solution.
So, here is an idea which I both thought of myself and also heard from several other people: What if after the contest and system testing phase there was open hacking phase, which doesn't give any points for hackers but helps to find solutions that should not be accepted.
It seems that it should be easily implementable, considering it already works somewhat like this in Educational rounds, but MikeMirzayanov may comment on that.
I see, however, several possible issues with that:
- It will require to wait for round results longer.
- It will not work very well for onsite competitions when results should be declared shortly after the contest (But in these cases open hacking phase could be cancelled or shortened(there's normally much less solutions to check after all))
- Author may get more lazy with creating tests (i.e saying "ok, contestants will hack that anyway"), which may reduce overall quality of the resulting testsets
- There will be people who are more targeted by hacks then others, which may be viewed as not fair. E.g if you are tourist , your bug in problem A will probably be found because your code is reviewed by a lot of participants who know about you personally, but a lot less people will read few thousands of (preliminarily) accepted solutions.
- For solutions that involve random number generators and/or are close to TL balance may be somewhat changed. E.g if I know, that mnbvmar's solution worked in 998ms out of 1s, I'll probably try to run (almost) same tests few times. Again, I will care less about people who are lower in the scoreboard because hacking them will not get me closer to the hoodie.
What do you think? Any other issues you can think of or any other comments are welcome.