Errichto's blog

By Errichto, 5 years ago, In English

Previous part: https://codeforces.me/blog/entry/63606

Apparently, one of problems had incorrect output data. Can someone confirm? On the bright side, no huge technical issues this year afaik.

Unpopular opinion here: Prague isn't a good organizer :O

Also, some disqualification in the top happened :O

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

| Write comment?
»
5 years ago, # |
  Vote: I like it +167 Vote: I do not like it

»
5 years ago, # |
Rev. 2   Vote: I like it +93 Vote: I do not like it

The rumour is, the disqualified team sent some rude clarification request in frustration.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +72 Vote: I do not like it

    I disagree with the disqualification, if this was the case

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +162 Vote: I do not like it

    I was the reason we got disqualified (would be 3rd though, so not much of a difference).

    We were having fun sending random stuff in the last problem at the end of the contest. Two seconds before the end we added one fork() call for the lols. We didn't think they would take it so hard since CERC in Prague is one big joke anyway.

    But of course you can't argue with their decision.

    • »
      »
      »
      5 years ago, # ^ |
      Rev. 3   Vote: I like it +21 Vote: I do not like it

      Entschuldigung, but how did you know that in that moment? Weren't you leading the contest at the end of the 5 hours?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +11 Vote: I do not like it

      Did that fork crash the system?

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +8 Vote: I do not like it

        Not that we're aware of. Probably it just got "rule violation" verdict.

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it +46 Vote: I do not like it

          Then we could say that the joke is on you.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +18 Vote: I do not like it
      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +93 Vote: I do not like it

        What the heck? We got disqualified for a submit that didn't even compile? :|

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it -42 Vote: I do not like it

          Yes you did. Your team attempted to send a solution that will violate the rules, and not being able to do that properly doesn't make you less guilty.

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it +206 Vote: I do not like it

            • »
              »
              »
              »
              »
              »
              »
              5 years ago, # ^ |
                Vote: I like it -56 Vote: I do not like it

              Formy popełnienia przestępstwa Art. 13. § 1. Odpowiada za usiłowanie, kto w zamiarze popełnienia czynu zabronionego swoim zachowaniem bezpośrednio zmierza do jego dokonania, które jednak nie następuje.

              • »
                »
                »
                »
                »
                »
                »
                »
                5 years ago, # ^ |
                Rev. 2   Vote: I like it +17 Vote: I do not like it

                I guess it from the criminal law? As far as I know in a lot of countries attempts are considered only there.

                Don't you find it a bit too harsh?

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  5 years ago, # ^ |
                    Vote: I like it +28 Vote: I do not like it

                  Even more: don't you find it a bit too silly?

              • »
                »
                »
                »
                »
                »
                »
                »
                5 years ago, # ^ |
                  Vote: I like it +66 Vote: I do not like it

                Fucking retarded

              • »
                »
                »
                »
                »
                »
                »
                »
                5 years ago, # ^ |
                Rev. 2   Vote: I like it +47 Vote: I do not like it

                Actually we talked to a lawyer about the CERC rules and he agreed that we didn't break them, because they don't mention punishing for the attempts.

                No matter how seriously you take ICPC, breaking the rules does not count as criminal act in your home country.

                BTW finally our coaches decided not file an official complaint (although we wanted to).

»
5 years ago, # |
  Vote: I like it +51 Vote: I do not like it

Yes, indeed there was bad test data in one of the problems. As we were explained, the judges' programs all had the same mistake. (I'm not sure if I should spoil the solutions, but it was a textbook error in a textbook algorithm — whenever we teach this algorithm to the students, we always warn them against this very mistake :)). Also, there was no rude clarifications, and no big and juicy secret behind this. But I think this is not anyone's business but the interested team.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +21 Vote: I do not like it

    Can you please share the exact bug with us? We have no idea what it was

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +34 Vote: I do not like it

    You say it was a textbook error in the algorithm but many teams had solutions that didn't use the same algorithm as the official solution and still had the exact same bug and got AC on the wrong data, including my team. Could you please tell me exactly what that error was, at least in a PM? Another team from my country did use the same algorithm as the official solution and didn't make the mistake, and they don't have an idea what the mistake could be.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +62 Vote: I do not like it
      Spoiler
      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +8 Vote: I do not like it

        Thank you, I think I understand. We did the same thing but in a less efficient manner without the algorithm so we had the same mistake.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +59 Vote: I do not like it

        ROFL. Yes, that's a textbook mistake that probably everyone who tries to implement that makes at least once.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +61 Vote: I do not like it

    Was it a problem where it's impossible to write some slow (maybe exponential) brute force? If no then Prague shouldn't organize international contests.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +53 Vote: I do not like it

      It is possible to write a brute force — just try all possible strings. It's weird that they didn't test the official solution with it.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +8 Vote: I do not like it

      Well, two things. First: that was obviously a stupid mistake, but I've had my share of stupid mistakes, too, so I'm less inclined for quick judgement. Second: last year, when the Prague system wasn't working at all, I was more fired up and even made a quick inquiry about possible alternative CERC organizers -- not that I could actually do anything about that, but I was actually angry enough to ask around. So...guess how many volunteers turned up :)

»
5 years ago, # |
  Vote: I like it -26 Vote: I do not like it

Unpopular opinion here:

You're not supposed to follow that up with a popular opinion.

»
5 years ago, # |
  Vote: I like it +8 Vote: I do not like it

Can someone share final standings?

»
5 years ago, # |
  Vote: I like it +97 Vote: I do not like it

I can surely imagine someone making this bug. Less likely, but I can still imagine three people doing this exact mistake independently (not sure whether these judges discussed this solution between them (bad) or not (good)), but what I am mad about is that they didn't stresstest it against straightforward bruteforce solution what would definitely detect this bug. Having multiple solutions giving the same answer prevents from having stupid implementation bugs, but doesn't really prevent from mistakes in logic of the solution. Stresstesting against themselves two solutions computing the result in two completely different ways gives much better safety than stresstesting two codes implementing the same idea.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +18 Vote: I do not like it

    To me, stresstesting against a bruteforce is for killing any implementation/logic/anything mistakes that appear with sufficiently small inputs, while having different full solutions is both for those mistakes that only appear with large inputs, having multiple opinions for tuning limits and difficulty, but especially spotting passing solutions that break the problem or have countertests that aren't in the test data. Testing needs some amount of "the setters are dumb and I'm going to prove that".

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    I can not imagine someone making that bug and sets CERC tbh

    • »
      »
      »
      5 years ago, # ^ |
      Rev. 2   Vote: I like it +13 Vote: I do not like it

      Everybody makes mistakes. I do a lot of stupid ones as well even though I have decent achievements in competitive programming. But whatever I do, I take as many precautions as I could if I am aware my mistake could have bad consequences, ensuring myself everything is ok in a way that is not almost bound to guarantee safety. And these precautions here were not taken.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +37 Vote: I do not like it

        People can make mistakes, but for me that specific bug is not a mistake, but a proof of not understanding AC correctly. I also didn't understand why AC fails when I don't propagate success flags. After understanding why, I realized that actually I didn't know what Aho-Corasick does. I think someone who sets CERC should understand basic algorithms such as Aho-Corasick.

»
5 years ago, # |
Rev. 2   Vote: I like it +16 Vote: I do not like it

After seeing the standings, I got curious about the difficulty/balance of the problem-set (there are so many teams with 11 — 10 problems solved).

Overall it is sad to see such things happen in a renown contest as CERC. Hope next year it is organized by another university.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    It was said that the next year will be organized again by CTU in Prague. The organizers mentioned that the year after that (2021) will be in Ljubljana if I recall correctly.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it -16 Vote: I do not like it

      I think 2020 is Slovenia, and 2021 is Croatia.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +26 Vote: I do not like it

        Nope. It is indeed 2020 in Prague again, 2021 in Ljubljana.

»
5 years ago, # |
  Vote: I like it +27 Vote: I do not like it

Anybody know some details about what they said about 2021? I mean that we will have European qualifiers.

»
5 years ago, # |
  Vote: I like it +107 Vote: I do not like it

Here's a new idea. Organizers should ask random people in discord for help with testing the problems just before the contest.

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +36 Vote: I do not like it

    >implying they don't
    >implying it didn't end up with them getting pranked by some Pole and deciding it was a dumb idea

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +18 Vote: I do not like it

    I don't know how the thing works, but I think Prague can ask help for Polish coders? They prepare subregional(AMPPZ), so they are trustable and they surely have the experience, isn't it?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +11 Vote: I do not like it

      I think it's not even Prague in general, but CTU Prague. A technical school, not a CS school. They could already ask MFF UK (the other school), but the main reason is probably that even if the problems are too easy and have mistakes, nobody above them in ICPC will care and the next years will go on as usual.

»
5 years ago, # |
Rev. 4   Vote: I like it +18 Vote: I do not like it

Btw, does anyone know whether getting disqualified still counts as participating in a regional contest, for the eligibility ladder?

We didn't get the PDF certificate in icpc system :O

  • »
    »
    5 years ago, # ^ |
      Vote: I like it -22 Vote: I do not like it

    I understand that for your it is funny situation, but it shouldn't be. Questions you better be asking: Is this disqualification only for this year or forever? Will other teams from our university be disqualified too?

    My guesses would be: you and your teammates are banned forever, university is banned from icpc for 2-3 years.

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it +42 Vote: I do not like it

      Interesting, your view of this situation is completely different than mine.

      My guesses would be: it doesn't count as a participation, no other team is going to be anyhow involved, the university should file a complaint because of "gross misconduct by contest officials with the intent to harm".

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +31 Vote: I do not like it

        Why wouldn't it count as a participation?

        If it was the case, every team performing not so well would have an incentive to add a "fork()" line to their solution in the end of the contest to get disqualified and get one additional attempt.

      • »
        »
        »
        »
        5 years ago, # ^ |
          Vote: I like it +50 Vote: I do not like it
        1. I assumed that rules explicitly say "calling some OS functions like fork is prohibited". If it is not the case, you shouldn't be disqualified. Otherwise, my first comment stands. Especially if diff with your previous submit is just this fork (which looks like it judging by your comments).

        2. You are basically saying that if you have not qualified for WF you should "slightly break the rules" so that participation doesn't count. This is insane, right?

        • »
          »
          »
          »
          »
          5 years ago, # ^ |
            Vote: I like it -8 Vote: I do not like it

          I'm not saying that it shouldn't count, I simply don't know what are the procedures. And no certificate in the system makes me confused.

          Btw, my opinion is that breaking ICPC rules should result in a lifetime ban. However, this is not the case.

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it +18 Vote: I do not like it

            The opposite for me: I don't think that breaking ICPC rules should result in a lifetime ban (or, for that matter, ban at all) because some ICPC rules are very stupid (like you can be banned for not attending sponsored events), but most of the stories about bans I heard resulted in some very permanent damage not only for rulebreaking team, but for its university too.

            I'm not saying that you did something really bad and should be punished for it. I also don't have anything against Warsaw U. I'm just saying that apparently judges of your regional are angry at you and this can end badly for you and your university.

          • »
            »
            »
            »
            »
            »
            5 years ago, # ^ |
              Vote: I like it +24 Vote: I do not like it

            A similar situation happened in Latin America region (at that time, South America/Brazil site) in 2007 or 2008. A team made a "fork bomb" during the warm-up session. Because of this, the server collapsed, and the team got disqualified.

            The same team participated in the next two years, qualifying to the World Finals. Thus, I don't think there is a lifetime ban in such situation (at least in the official ICPC rules).

  • »
    »
    5 years ago, # ^ |
      Vote: I like it -18 Vote: I do not like it

    My guess is that you just get result:YEET and otherwise, everything is the same as if you didn't send a fork and got a non-YEET result.

»
5 years ago, # |
  Vote: I like it -38 Vote: I do not like it

I hate problems :')