When submitting a solution in C++, please select either C++14 (GCC 6-32) or C++17 (GCC 7-32) as your compiler. ×

Petr's blog

By Petr, history, 7 years ago, In English
  • Vote: I like it
  • +167
  • Vote: I do not like it

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

A bit different, but similar situation can happen in Codeforces too.

When a contest starts, I usually glance at all problem statements to decide the first problem to work on. However, sometimes it turns out that I'm good at none of them. In this case, is it unsportsmanlike to leave the contest?

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

    But in Codeforces you have penalty based on sum of times, not maximum one, that changes A LOT. However I really like idea of maximum time, that shouldn't be changed.

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

    Yes, also an unclear situation :) I don't know. I think I might have done that once.

    What's your view on the AtCoder question? Since you came up with the format (right?), your opinion is probably the most important here.

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

      I'm also uncertain. Of course, I would be happier if you appear in the standings, but I totally understand that you don't want to submit your solutions in that situation, and it's not against rules.

      It may be possible to add a "read problems" button that appears when the contest starts. You can read problems only after you click this button, and you will be rated once you click it. We are discussing about this option now, but we haven't decided anything yet.

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

        So, that "Register" button does nothing?

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

          It adds you to the standings, but it can be pressed long ago the start of the contest. It will be inconvenient if it automatically makes you rated.

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

            By the way, what is its purpose? I still don't get it, but it is present on basically all platforms. From participants view it is useless. Does it change something from the admin's perspective? Another idea, not sure if serious, is that it is to encourage participants, because if user clicked it day before he is less likely to change his mind, because he already somehow committed to participating :p.

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

              On CF and TC it is used to generate rooms.

              Also I think that if you can freely submit the problem from ongoing contest without registration there is a possibility that you won't understand that it was a problem from the contest and your participation counts even if you don't want to.

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

              It's a good estimate for the number of users that will participate. This way we know how many machines to rent.

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

                Isn't the number of people who participated in a previous contest of equal type a sufficient estimate?

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

                  Not really, the last Div. 1 we had a 25% increase, and on Wednesday (Div. 2) we're expecting a drop. It's also fun to know who's going to participate, imho.

      • »
        »
        »
        »
        7 years ago, # ^ |
        Rev. 4   Vote: I like it +83 Vote: I do not like it

        After tourist started using this strategy on CS Academy, we also started talking about a "read problems" button or something equivalent. The reason I dislike this idea is that it would force you to participate in a rated event even if you only want to read the statements. I'm not competing in contests, but I do enjoy thinking about problems. On TopCoder you can't read them during the contest, and this makes me lose interest and many times I forget to come back and check the statements.

        Maybe after clicking the "read problems" button, you are prompted with a question asking whether you want to be rated or not?

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

        Even if you add a "read problems" button, others can still make a fake account to do see the.

»
7 years ago, # |
Rev. 2   Vote: I like it -314 Vote: I do not like it

You are so obsessed with being the first in every contest you take part in. Second place doesn't count at all. Are you so sure that you are the best? And who is 'more the best', tourist or you?

I remember that after TCO16 final you came down from the stage and said something like (I may translate wrong) 'What is more annoying kind of loss? Let's discuss.' I didn't understand it back then but now I see that you were comparing yourself with tourist and only with him. Maybe you even thought that since he failed semifinal you will win for sure.

In a year or two LHiC and jqdai0815 will be better than you in most contests. Then what? You'll stop participating?

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

    What the f%ck man?

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

      :) Yeah, that was the idea.

      You can check my other works here

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

        Being rude with no particular reason is not something to be proud of (been there, done that, but I am at least working on it)

  • »
    »
    7 years ago, # ^ |
      Vote: I like it -17 Vote: I do not like it
  • »
    »
    7 years ago, # ^ |
      Vote: I like it +388 Vote: I do not like it

    It seems you don't know Petr, let me introduce him.

    I started competitive programming 10 years ago. At that time, all football kids dreamed of becoming Messi and Cristiano Ronaldo. All tennis kids dreamed of becoming Federer and Nadal. All TopCoder kids including me dreamed of becoming Petr and tomek. The highlight of this Petr/tomek era was the Final of TCO 2008. If you don't know what happened, watch it.

    A few years later, ACRush also reached another planet by reaching #1 in TopCoder and winning GCJ by a huge margin. In this era, Petr and ACRush always dominated all contests in competitive programming.

    A few years later, tourist reached another planet too by winning all contests he participated in. As you all know, it is Petr/tourist era now, they dominate all contests these days.

    Did you notice that someone appeared in all three eras? Do you think he will decline in a year or two?

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

    Putting ridiculous stuff aside, Just wait until some of the people you mentioned get full time job or are out of regular "acm style" practice for other reasons and their ratings will drop in no time. Petr is an exception and maybe opencups and other contests here and there helps him to stay in shape.

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

    This is stupid. It's called competition. Competing is fun. Trying to be "more the best" than the best is fun, especially if you have the means for it.

    Why shouldn't Petr compare himself with tourist? Right now tourist provides him with a challenge, and Petr is up for that challenge.

    I'd also argue that Petr seems more like a guy who'd stop participating sooner if there was nobody in the same league with him rather then if there are more great people to compete against :)

    Regarding the link you provided in a later post where you say that messages like this are your "style": this is not about style. You've written some great and informative messages in the past. Not this time. In fact, a comment like this should have never been sent from your account, as it's more MAXIMAN tier garbage.

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

      I think that there are some other participants (including those I mention in initial comment) that provide a challenge. But all of them don't exist in Petr's mind.

      Looks like you suppose that I have more than one account. That's fun.

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

        Can't say for Petr, but don't you think it's just that Gennady is on everyone's mind when there is an international competition nowadays?

        Can't completely disregard your point though, yes, other guys deserve acknowledgement too. Really hope to see LHiC and overtroll as ACM-ICPC World Champions representing Russia one day.

        And no, I don't suppose you have more than one account, I honestly think you shouldn't have posted this at all :) Free speech though.

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

      I don't agree that initial comment was complete garbage, as a part of the discussion about behaviour at AtCoder. Stuff about stop competing is ridiculous here, but it is exactly that strategy "I'll not participate if some others performed better" suggests. So it's ridiculous too. I don't know did Um_nik really mean that though.

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

    Man I seriously fucking wonder how you are a fucking +133.

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

      Not a problem, it will decrease soon.

      Sometimes community appreciate meaning and ignore wording.

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

    Had I wanted to maximize the chances of winning, surely the way to do it is more practice instead of trying to explain myself on camera during the round? So I'm at least very lazy and a narcissist, you have to give me that :)

    On a more serious note, thanks for sharing your opinion. I can see how my constant comparison with Gennady can look disrespectful to the other contestants, and I apologize for that and will try to be mindful of that going forward. Having said that, I do want to improve myself when competing, so when I see people doing better, I try to learn from them. Heck, even when I do win I try to look for ways I could improve.

    And remember that I'm watching you as well :)

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

      I'm sorry that my comment was so harsh, I was really pissed off at the time. I'm glad that you got my point despite it was expressed in such a bad way.

»
7 years ago, # |
  Vote: I like it +13 Vote: I do not like it

Yes, it's unsportsmanlike.

The question, though, is whether you compete primarily for sportsmanship. I don't — it'd be a tiebreaker, but no more than that. It's be better not to have the ability to do it, but I have used it and will use it as long as possible.

»
7 years ago, # |
  Vote: I like it 0 Vote: I do not like it

On a different note, you said that problem E on today's AtCoder didn't look interesting to you. Actually I really enjoyed solving it, especially the part when instead of (very tempting) counting paths with fixed lunch point we count lunch points with fixed path :).

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

    Yes, I've read the editorial and agree that it was nice. However, I didn't appreciate that during the round since the initial look at the problem statement was a bit off-putting :(

»
7 years ago, # |
  Vote: I like it +71 Vote: I do not like it

I will not enter in this disscussions of grandmasters, my place is not there :P

Maybe AtCoder / CS Academy can have frozen standings last 30-40 minutes, so nobody can be sure what will be enough for win at the end.

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

    It's nice idea, but it can solve problem only for top participants. For other will be enough to know frozen results for making roughly prediction of their expected place.

    By the way, button "Read problems" also is bad solution for such situation. It wouldn't stop all, some of competitors would make fake accounts only for problem reading without rating lose.

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

The reason why I'm so reluctant to accept the "read statements" button: When you find you're too sleepy or too sick to continue thinking, you have to give up your rating just for that? If so, couldn't that be a great reason to decrease the number of contestants?

Personally, I care for my health conditions for each contest. I'd stop participating in rated AGCs when I feel myself slightly different than usual.

P.S. (thoroughly irrelevant): I'm a TopCoder wolf dreaming of becoming Ovechkin and Connor McDavid, not Petr or rng_58. Sorry for my poor joke.

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

    Aim higher: why not Wayne Gretzky or Mario LeMieux? :)

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

    I don't get you. I guess you do not follow "all at once" strategy, so if you follow typical strategy you will be committed to participation either way after 3 minutes by getting A accepted. How often for you is the case when you are healthy on the start but become sick before first submit (even if you start solving from harder ones)?

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

      As soon as I start writing a code, I can feel I don't have energy for the contest under such bad condition.

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

    Random question, do all contests sites use a "chess" style rating system?

    Or are there any contest sites which use similar systems to say, Tennis, Golf or Formula-1 racing where for each event, points are awarded on some scale. Bigger events award more points, and higher placing awards more points. In the end the top people play in the "grand slam" events and place high so their "rating" is still highest.

    But for a low person like myself, that would also be particularly nice because whatever I did, I got SOME points. For non-zero score, of course!

    This would encourage always submitting something. Just a thought. :-)

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

      I believe most sites use Elo rating system.

      People might hope the rating to show the strength of a person in programming contest. Before some important event, e.g. IOI, ICPC WF, you can see some post that collects the rating of all contestants.

      The rule you mentioned would be more applicable for a season-like competition. I remembered that Yandex Algorithm use the rule to pick the finalist in that way.(If I'm not mistaken, Open Cup uses similar system for raking, too.) But it's not a good choice for the sites that people are competing for fun, challenge and interest.

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

      AtCoder rating starts from minus infinity. If you keep consistent performances, your rating will gradually increase.

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

        Thank you. I just played my second match in there and my rating went from 6 (haha!) to 100. I was surprised at these numbers but now that I know the floor is negative infinity, I feel better. :-) :-)

        The problems are very elegant and I like the immediate testing. Great format.

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

      AFAIK CF rating system is chess-style (generalized Elo), while AtCoder's & TopCoder's are more like a weighted mean of past performances.

      CF emphasizes only the last few rounds, and AtCoder assigns more weight to better performances, giving a good reason to participate with less worries.

»
7 years ago, # |
  Vote: I like it +125 Vote: I do not like it

I've felt that my reply is too long, so I've created a separate blog post describing my behavior during AtCoder and CS Academy contests.

»
7 years ago, # |
  Vote: I like it +164 Vote: I do not like it

First I will talk about my story in AGC 18. I solved pF first. I thought pE is a counting/math problem and I could solve it very fast. I decided to submit these two problems together. However, I spent a very long time to solve pE. There are only 40 minutes left after finishing these two problems. So I decided to solve A+D to achieve more scores than A+B+C+D+F, and submit all these four problems together to give a "surprise" to tourist. It turned out that I didn't know how to find a Eulerian circuit after two years. And I didn't notice we should choose the edge adjacent to the centroid.

Actually, I didn't use this strategy before. I think the main reason to take this strategy is I underestimating the difficulty of pE. I also think beating tourist in his way is really cool. (umm.... I think I should stop daydreaming :P)

In my mind, this rule is very good to encourage contestants to solve hard problems. We don't need to care if you can't solve anything in the first hour. Solving hard problem is interesting and challenging for me. My usual strategy for AGC is starting from the hardest problem in AGC and submitting it at once when I finished this one. I will feel very happy if I can be the first one to solve the hardest problem. And I will try other problems depending on scores and time remaining.

However, I don't think it's a good strategy for winning. The hardest problem may be very hard. Sometimes I spent too much time on solving the hardest one and didn't have enough time to solve others. In AGC 13, I spent 2hrs to solve pF. In AGC 12, I solved pF in 10 minutes after the contest, so I ended up with nothing.

Different people have different goals in competing. And they take different strategies. The quality of problems in AGC is very high, so I prefer solving interesting problems to getting a high rating. I like the rule of atcoder very much. I can focus more on solving hard problems.

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

    Thanks for sharing! This is a nice perspective which I was missing because for me trying to win is an integral part of enjoying the competition, together with solving difficult problems and with discussing the said problems afterwards with friends :)

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

I came up with a following idea to partially solve the problem. The scoreboard will be hidden until you make your first submission. If you use late submission strategy you will probably send easiest problem to reveal standings and it will work like start contest button. What do you think about this solution?

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

    It's bad for spectators who just want to see current standing during competition and don't want to participate. Also you can create fake account and make a submission to see real scoreboard.

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

      Adressing second issue — nobody we care about is desperate to the point of creating fake account.

      Adressing first one — valid argument, however this solves other issue mentioned before — people are still able to read statement without commiting to participation.

      What I would care more is that it is kinda awkward from participant's point of view to not be able to see standings before your first submit. For reds (that are disscusing on it) it is probably a small issue, but for less experienced participant that don't solve A in 5 minutes it is probably bigger one, especially for complete beginners.

      That again can be solved if we add "See standings" button making contest rated for you, but that again has its drawbacks... I guess that's a neverending road of drawbacks xd

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

        I don't think of myself as desperate, but I would create fake accounts if inconvenienced enough. Then again, maybe you don't care about me.

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

          So do you have fake account to open problems at topcoder?

          I think that it's inconvenient enough that I can't read all problems and choose the best one to solve.