CRH826's blog

By CRH826, history, 6 hours ago, In English

One example: https://codeforces.me/contest/2268/submission/392218401. It simply adds to an O(n^2 log n) algorithm a pruning that exits if the value is worse than the optimal answer for an interval of length 2, and it does not change its complexity. It has already been hacked after the contest, but it easily passed the system tests and in-contest hacks.

As we all know, CF Div.1/2 only has an in-contest hacking phase and no post-contest open hacking. The flaw of this format is that most contestants spend their time during the contest solving problems and do not pay attention to hacking; moreover, you can only hack within the same room, and only if you have solved the corresponding problem. This makes harder problems very difficult to hack, even if their algorithms are completely bogus, because there are already very few contestants in a room who solved the hard problem, and even fewer who, after solving it, would carefully read others' code. As a result, such code can also pass hacking and system tests. However, even under such circumstances, there were still quite a few successful hacks, which fully demonstrates how weak the system tests are.

If you can get a problem accepted by just writing a brute force, what is the point of CF contests? We did not write this brute force precisely because we believed that CF's system tests and hacks could stop incorrect solutions, but this contest betrayed our trust. Therefore, I call for the immediate creation of strong test data and a second system test together with the in-contest and post-contest hacks; otherwise, the fairness of CF contests will be difficult to guarantee.

MikeMirzayanov Hamed_Ghaffari Error_Yuan

  • Vote: I like it
  • +58
  • Vote: I do not like it

»
6 hours ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by CRH826 (previous revision, new revision, compare).

»
6 hours ago, hide # |
← Rev. 2  
Vote: I like it +16 Vote: I do not like it

Pass with a brute is my fortune.

»
6 hours ago, hide # |
 
Vote: I like it -8 Vote: I do not like it

Also in Div2C...Here is one Sample that should get WA but got AC :392233470

  • »
    »
    4 hours ago, hide # ^ |
     
    Vote: I like it +1 Vote: I do not like it

    how this code is supposed to be passed the system cases????

  • »
    »
    3 hours ago, hide # ^ |
    ← Rev. 2  
    Vote: I like it 0 Vote: I do not like it

    literally did the exact same thing except I tried to be a bit unique and used a PBDS Statistics Tree (Which is just better imho for erasing in unordered problems, at least for me). 392219215

»
61 minute(s) ago, hide # |
 
Vote: I like it +1 Vote: I do not like it

Adding a second system test with strong up-hacks is unfair to everyone who will fail the second system test. By the Codeforces rules only tests added by the author and hacks made in contest are used in the system test. Theres no rule that says everyone who passes system test must pass every legal input (and in fact, if you believe it does, on any problem there will be many people pass with solutions that take >1900ms on 2 second time limit problems, where you can probably find a more optimized max case that cuts their solutions — should they fail too?)

The point of uphacks is so people who upsolve has to pass a stronger tests set. It has nothing to do with the contest since it ended already.

Theres no “betrayal of trust”. Your objective in a contest is to make your score as high as possible, by any means. Not writing a brute force that you believe cannot pass is a choice that in this case, punished you (and this is usually the right choice, since if you write brute force hoping it passes for most problems it will be punishing in that it takes time and gives you penalty if you solve it eventually)