BingxiuXie's blog

By BingxiuXie, history, 2 months ago, In English

https://mirror.codeforces.com/contest/2203/hacks?chosenProblemIndex=F

Look at the page. The hackers are sending an unlimited amount of hacks, and sometimes a multitude of similar hacks are even sent to hack the same submission, simply because some submissions almost exceeded the time limit.

Why isn't there a limit or interval for hacking?

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

»
2 months ago, hide # |
 
Vote: I like it +1 Vote: I do not like it

In rounds with an open hacking phase, hacks do not earn points; they just make the test cases stronger.

  • »
    »
    2 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    But the problem is, the hacks to this problem aren't really making test cases stronger, they're just repeating them to make submissions exceed time limit.

    As I said, look at the page above. Four hacks are sent within three minutes to the same submission.

    • »
      »
      »
      2 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      I think it is reasonable that submissions that may TLE should TLE.

      • »
        »
        »
        »
        2 months ago, hide # ^ |
         
        Vote: I like it 0 Vote: I do not like it

        But actually they shouldn't TLE. Think about this, if the time limit is $$$\rm{1500ms}$$$, any solutions which cost more than $$$\rm{1200ms}$$$ could get a TLE if you submit it thousands of times.

        • »
          »
          »
          »
          »
          2 months ago, hide # ^ |
           
          Vote: I like it +5 Vote: I do not like it

          Actually, the time spent won't float that much. What's more, Codeforces will run twice the program if it gets TLE. So the effect is significantly low.

      • »
        »
        »
        »
        2 months ago, hide # ^ |
         
        Vote: I like it 0 Vote: I do not like it

        Can you firstly check the page I mentioned above before replying?

»
2 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I mean, if a solution will TLE if run a couple of times on a certain testcase, then it should be added to the testset incase other solutions run into the same issue (though it would more impact solutions that are slightly too slow), don't think this is a major issue

  • »
    »
    2 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Actually, if a program costs more than $$$\rm{1300ms}$$$ normally, then when the judging machines are busy, it could always take more than $$$\rm{1500ms}$$$. So it means, the time limit becomes lower if you repeat the hack.(like $$$\rm{1500ms}$$$ would probably become $$$\rm{1200ms}$$$, etc.)

    • »
      »
      »
      2 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      If you're that close to the time limit, you have the potential of being hacked for it. That's just how it is. Also, wouldn't the judging machines be more busy in the middle of the contest rather than the open hack phase?

  • »
    »
    2 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    If you don't understand what I'm saying, you can try to submit the same code a multitude of times, and you'll find that the time it takes for the same input would change a lot.

»
2 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

But after the hacking stage, the judge will run all the tests again and under the usual environment right?

»
2 months ago, hide # |
Rev. 2  
Vote: I like it 0 Vote: I do not like it

so what's the problem here? I just didn't understand, if a solution fails, it fails, or is it bad that they are spamming judges? But I think think judges are not overloaded with hacks. Is there something I misunderstood?