Блог пользователя Um_nik

Автор Um_nik, история, 4 года назад, По-английски

Since antontrygubO_o has became CF coordinator he is trying hard to make rounds which meet his standards for quality and (more importantly) beauty. I think he is doing a great job.

For some time there is a very vocal group of people who dislike his view on things. I feel like it will be hard for Anton to maintain his work if he would think that majority of people doesn't approve.

But I don't really think that this is a majority. If you enjoy rounds prepared or coordinated by Anton, please comment here with some positive feedback.

#AdHocProblemsMatter

  • Проголосовать: нравится
  • +1794
  • Проголосовать: не нравится

»
4 года назад, # |
  Проголосовать: нравится +357 Проголосовать: не нравится

antontrygubO_o I love your problems, please don't stop!

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +56 Проголосовать: не нравится

    We are all aware that antontrygubO_o is trying his best and I am thankful to him for these rounds and we were merely giving suggestions on how the rounds could be improved further and eventually be more balanced. But yeah It would be hard for him if he only saw negative feedbacks. So Thanks for these rounds antontrygubO_o

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +70 Проголосовать: не нравится

Rejecting 72 problems in a round also reflects his dedication. The problemset was great, I enjoyed solving a lot (Thanks to him and setters).

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +13 Проголосовать: не нравится

    He rejected 72 questions then gave us a question where we just had to print "1 " n times? I don't understand.

    question: https://codeforces.me/contest/1372/problem/A

    • »
      »
      »
      4 года назад, # ^ |
        Проголосовать: нравится +35 Проголосовать: не нравится

      I mean, the samples don't give away that printing 1 n times is a viable solution, so you still have to think a bit to realise that. I'll admit, it's not the most magical observation, but it's still a cute little puzzle for a div2A.

      • »
        »
        »
        »
        4 года назад, # ^ |
          Проголосовать: нравится +14 Проголосовать: не нравится

        Yes it was decent question for D2A, but if he rejected 72 questions for "question quality", I don't see why is this question here. It feels like he was deliberately trying to have a adhoc question even if the probelm setters showed a good question but it was using some basic algo/ds. Just what I think ofc.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится +10 Проголосовать: не нравится

          Well, firstly, he rejected only 12 proposals for Div2A problems according to the blog. 72 was the overall number of rejections.

          Secondly, we don't know what the questions were actually rejected for. Some could have been quality concerns, some could have been that the difficulty is not quite right, and some could be due to similarity with existing problems on the platform. It's even harder to make the claim that "he was deliberately trying to have a adhoc question" as we do not know whether the other rejected questions were adhoc, math or algo/ds.

          Lastly, question quality is really heavily a matter of personal preference. For example, I find this quite a cute little puzzle to solve as the first problem in a contest, which in my opinion makes it an excellent Div2A, but maybe someone else would think a problem such as 1228A - Distinct Digits is a nice Div2A (which I disagree with, but that's a different issue altogether). Therefore, maybe Anton (and perhaps the contest setters) thought that this problem was elegant enough or of high enough quality to be included in their problem set over all the other proposals.

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
              Проголосовать: нравится +21 Проголосовать: не нравится

            I'd like to clear, when I say 72 questions were rejected, it means that their quality was lower than this question (relative to whichever question no. they were designed for), which seems unreal (atleast to me) as this question doesn't feel like a quality question for div2A at all.

            I don't know what is a "quality" question in his eyes, but in my eyes, this one definitely wasn't, and it's baffling to me that 72 question were lower quality than this (ofc we are talking in relative terms here, since this one made into contest while others didn't.)

            Now I'm not complaining, afterall I was able to do this question in 2 mins in the contest which was really motivating, but again, I just don't understand what is this "quality" he's looking for.

            He's a red coder, so he definitely has a better(way better) eye for that, but again, I don't understand what's this weird criterion.

            • »
              »
              »
              »
              »
              »
              »
              4 года назад, # ^ |
                Проголосовать: нравится +2 Проголосовать: не нравится

              What feels like a quality question for D2A for you? If this doesn't feel like it, I am curious.

              • »
                »
                »
                »
                »
                »
                »
                »
                4 года назад, # ^ |
                  Проголосовать: нравится +24 Проголосовать: не нравится

                You missed my point, this is definitely a decent div2a question, but I feel like after rejecting 12 questions, if you come up with this, I don't know what to feel about this, were the problem setters bad, the coordinator bad or what.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится +14 Проголосовать: не нравится

          Please show me some algo/ds div2A.

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
            Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится

            If you count edu round problems and are willing to stretch your definition of "algorithm" a bit, 1278A - Shuffle Hashing is one such example.

            Edit: it was also the only example I could find out of all of the Div2 only rounds I took part in as official contestant. Maybe I joined when CF was already transitioning away from classic problems in Div2.

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
              Проголосовать: нравится +6 Проголосовать: не нравится

            I mentioned DSA related problems in my original argument, but I didn't just mean DSA problems, I've seen better, way better and well suited ad-hoc problems for div2A in this short amount of time I have spent on CF. I'm just perplexed that this question made it into contest while 72 other didn't.

»
4 года назад, # |
  Проголосовать: нравится +129 Проголосовать: не нравится

When I VC old rounds, lots of times, majority of the problems are just copy-paste-from-library problems. I like the fact that anton's trying to avoid that and to increase the quality of the CF problems.

»
4 года назад, # |
  Проголосовать: нравится +137 Проголосовать: не нравится

antontrygubO_o I love your problems, please don't stop!

»
4 года назад, # |
  Проголосовать: нравится +56 Проголосовать: не нравится

+1. Even though I objectively suck at his rounds– for example, -200 in GR9. I still maintain that the problems are very high quality, so I see no reason for this sudden backlash.

»
4 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Anton is a geniosity tbh

»
4 года назад, # |
  Проголосовать: нравится +49 Проголосовать: не нравится

antontrygubO_o should reject problems which are too similar to (/ just a reshuffle of) already existing problems. It shouldn't matter even if all the remaining problems turn out to be adhoc. Problems should force people to think in new directions, rather than just joining bits and pieces of old problems.

»
4 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Yup, his contests are great. But I am afraid how long he would be able to keep that up. After so many rejections, a setter might want to propose to another coordinator next time.

»
4 года назад, # |
  Проголосовать: нравится +7 Проголосовать: не нравится

AdHoc problems do matter when it comes to the way of thinking. I think antontrygubO_o's problem's are really good. I am no one to judge all but I really enjoy his problems.

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +123 Проголосовать: не нравится

I disagree. I don't feel satisfied if I solve a problem on paper and all I have to code is 5 lines (1371E2 - Asterism (Hard Version), 1365E - Maximum Subsequence Value). I miss the problems where you have to code a dp, to adapt some well known algorithm, etc.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится -69 Проголосовать: не нравится

    Is it Anton's fault if a setter doesn't propose a unique DP problem? Most DP problems I face are too similar to known ones, including many DPs in AGC.

    • »
      »
      »
      4 года назад, # ^ |
      Rev. 2   Проголосовать: нравится +76 Проголосовать: не нравится

      I can't believe that in Global Round 9 there wasn't a single interesting non-adhoc problem proposal in the range [A, G]. It doesn't have to be a dp, I'm only saying that I would like some problem with a non-trivial implementation.

      • »
        »
        »
        »
        4 года назад, # ^ |
          Проголосовать: нравится -44 Проголосовать: не нравится

        Problems which require more thinking, tend to have trivial implementation, as people already need quite a lot of time in thinking, so maybe it's not feasible to demand another 15+ minutes on coding. Copying old codes of suffix array, segment tree etc. dosn't require much implementation either, just the code gets bigger.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
          Rev. 2   Проголосовать: нравится +85 Проголосовать: не нравится

          In my opinion a good problem shouldn't require 1 hour of thinking and 5 minutes of implementation. Also, it shouldn't require some lengthy data structures like a suffix array. Some examples of problems that I consider very good:
          1307D - Cow and Fields It's a bfs + a nice sorting + prefix maximum, but it's not trivial to get the ideas. Also, writing a bfs requires as much time as copy-pasting and adapting it.
          83D - Numbers It's sqrt-decomposition + sieve of Erathostenes + inclusion-exclusion. Again, it's not easy to get the solution, writing the code is insightful but it doesn't require any lengthy implementation.

»
4 года назад, # |
  Проголосовать: нравится +38 Проголосовать: не нравится

AtCoder-style problems/iq tests/ad hoc stuff/mathforces are fun, definitely need more of those.

»
4 года назад, # |
  Проголосовать: нравится +245 Проголосовать: не нравится

The name of antontrygubO_o in an announcement blog post makes me happy. Keep going!

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +10 Проголосовать: не нравится

Quality problems like yours, are very hard to find these days! antontrygubO_o your rounds are very interesting and I enjoy up solving tricky problems. Thanks for ur hard work and please continue doing for the community! Best wishes ..

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    What's the point of downvoting it. His problems are really interesting and I love solving them.

»
4 года назад, # |
  Проголосовать: нравится +129 Проголосовать: не нравится

antontrygubO_o I love your problems, please don't stop!

#AdHocProblemsMatter

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

EVA vs UM_NIK,and it seems to me both are correct from their own perspective.

»
4 года назад, # |
  Проголосовать: нравится +43 Проголосовать: не нравится

antontrygubO_o 's problems are fun to solve :)

»
4 года назад, # |
  Проголосовать: нравится +43 Проголосовать: не нравится

I like most of those rounds, please make more of them!

»
4 года назад, # |
  Проголосовать: нравится +348 Проголосовать: не нравится

I support antontrygubO_o as long as he doesn't write announcement blogs because then he would beat me in contribution.

on a serious note, rejecting tens of boring problems is good, kudos for that

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +79 Проголосовать: не нравится

    If you want to stay on the top,come up with a new contest.

  • »
    »
    4 года назад, # ^ |
    Rev. 2   Проголосовать: нравится +117 Проголосовать: не нравится

    One of the things Errichto said on his stream a while back was that since Um_nik is so much more honest/unfiltered/critical than most people, if he says something good about someone, it might be a more valuable opinion than usual. I definitely think this is a good example of that.

    Also, I agree with pretty much everyone here, Anton's problems are very interesting and I enjoy them and the direction they seem to have shifted in. I also think Global Round 9 was quite nice despite having done poorly in it.

»
4 года назад, # |
  Проголосовать: нравится +21 Проголосовать: не нравится

some positive feedback.

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

During the contest I couldn't solve his problems, But after seeing the editorial I feel WOW, these problems are so good.

»
4 года назад, # |
  Проголосовать: нравится +230 Проголосовать: не нравится

From 0 to 100 real quick....

»
4 года назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

Thank you antontrygubO_o for making contests for us. #AdHocProblemsMatter

»
4 года назад, # |
  Проголосовать: нравится +41 Проголосовать: не нравится

I support rotavirus

»
4 года назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

You are just irreplaceable!!! Keep Going!! antontrygubO_o

»
4 года назад, # |
  Проголосовать: нравится +133 Проголосовать: не нравится

I like antontrygubO_o problems, but once Thanos said "Perfectly balanced as all thing should be", I feel that CF is missing this balance in the problems, I would prefer a bit of diversity in the problem set.

»
4 года назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

Good to see people standing up for adhoc problems. I don't see why some openly bash problems that require "observation" and "IQ" to be solved. Thinking and "AHA" moments are just as part of CP as writing that 100 line modified flow algorithm...

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

antontrygubO_o you are doing great, please continue.

»
4 года назад, # |
  Проголосовать: нравится +38 Проголосовать: не нравится

Is this in response to https://codeforces.me/blog/entry/80007 and comments on that?

If so, I do support having less constructive algorithms problems in contests — I find them extremely annoying. This is different from Ad-Hoc problems, which I do like.

I know that some people really like constructive algorithms and it can be argued that these problems are important, but a contest should not be overloaded with them.

An example of a really nice contest is Codeforces Round 641 (Div. 2) (only talking about Div2, I know Div1 was unbalanced) — there was only one constructive problem in Div2 A-E, and yet the non-constructive problems are interesting.

A really bad contest is Codeforces Round 638 (Div. 2) — Div 2 B,C,D are all constructive.

I would rather participate in a round full of math problems (no geometry though) than a contest with even two constructive problems. I am not asking for removing constructive problems, but only for a more balanced distribution of topics.

»
4 года назад, # |
  Проголосовать: нравится -13 Проголосовать: не нравится

#AdHocProblemsMatter keep up the good work :)

»
4 года назад, # |
  Проголосовать: нравится -16 Проголосовать: не нравится

antontrygubO_o I love your problems due to how diverse and mathematically rich they are compared to past rounds, which mostly had problems based on well-known algorithms. I personally feel that Adhoc problems help in both mathematical thinking and at times developing the ability to design algorithms (talking about the Adhoc problems which are not purely mathematical and need ingenious implementations at times which do not fall under typical categories). Keep up the great work and I look forward to more rounds from you!

»
4 года назад, # |
  Проголосовать: нравится -36 Проголосовать: не нравится
»
4 года назад, # |
Rev. 2   Проголосовать: нравится +127 Проголосовать: не нравится

Also, there is a very vocal group of people who likes his view on things :)

I do dislike his view on things, and I also deserve a right to criticize it. But Anton's work is in the scope of CP regardless if I like it or not.

Not all people should have same way of thinking. We need more diversity to learn more different things. Anton's work represents the idea he envisions, and sharing them is a great thing for the community. Thank you antontrygubO_o!

»
4 года назад, # |
  Проголосовать: нравится -8 Проголосовать: не нравится

All the questions are good. What I have noticed is that when antontrygubO_o is the coordinator, there are more AdHoc problems. These problems are hard to make(kudos to the problem setters) and very enjoyable to solve. I don't think this culture should die.

antontrygubO_o we do love what you're doing and keep it up!!!

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +5 Проголосовать: не нравится

antontrygubO_o I love your problems very much, although in almost all your contests I've lost rating . But please carry on, you'll always be my favorite problem setter.

#AdHocProblemsMatter
»
4 года назад, # |
  Проголосовать: нравится +39 Проголосовать: не нравится

I like ad-hoc problems but I have a worry. What should we be teaching beginners? The usual thing I do at my university is to first teach good programming habits, then "classical" competitive programming techniques (backtracking, DP, graphs, data structures). But if they become less and less important for contests, my trainees start to wonder why they never seem to get to apply what they learn or why they still do very poorly despite the training.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +6 Проголосовать: не нравится

    I think adapting your teaching to shifting trends is a normal process.

    • »
      »
      »
      4 года назад, # ^ |
        Проголосовать: нравится +10 Проголосовать: не нравится

      That's a fair comment. Any concrete suggestions? Like what typically happens in training sessions in more successful universities? I guess, "Just solve more problems?" Beginners who are looking for some structure in their training aren't going to be happy about this, but oh well, I guess?

      • »
        »
        »
        »
        4 года назад, # ^ |
        Rev. 2   Проголосовать: нравится +14 Проголосовать: не нравится

        Disclaimer as I have never been in a training session of a more successful university.

        First of all I don't think it is true that classical techniques are not important anymore. They still are, and serve at least as inspiration. About them not appearing specifically on CF in Div2A-D, I already wrote somewhere that this has been the case for a while. In any case I think my ideas should complement lectures about classical things, not replace them.

        But here are some ideas (untested and require at least some amount of motivation from students). Pick a small problemset (it could be an old contest but probably it is better to curate it yourself so that every problem matches the skill level of your students), leave it as "homework" for a few days. During a session, ask every student to present the solution to one problem. But it is important to not let it become like other homework, it should still be based on them being interested.

        Or do it seminar-style. Ask each student to look around for some fitting problems and then let every student pick the problemset for some week.

        Edit. Why so many downvotes? :O

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится +31 Проголосовать: не нравится

          Yeah. I have just read Anton's post and your comment there. If setters don't propose as many classical problems for Div. 2 as they used to, then it can't be helped. It's not Anton's fault. I'm not even really opposed to having only ad hoc problems in Div. 2. It can be more welcoming for the talented but untrained beginner.

          Also, I'm aware that the landscape has changed a bit, for some time already, and I'll admit I've been slow to adapt. And I agree that though it has changed somewhat, the classical techniques are still pretty relevant, if not in Div. 2's, in contests with higher stakes like ICPCs (at least in my region) and OIs. (I've joined too few Div. 1's to judge.) Of course, classical techniques should still eventually be taught. I think my real dilemma is how early or late the classical techniques should be taught, given they don't appear frequently in "beginner" contests anymore, and, if the answer is "not early," what to replace them with, but I suppose it's hard to give exact answers.

          Anyway, thanks for your nice suggestions. They're definitely worth trying.

»
4 года назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

I guess that everyone has a task that you are very proud to have solved during the competition.

Remember this problem? I'm 90% sure this is an AdHoc problem. For me, this problem was 1205B - Shortest Cycle, that was authored by antontrygubO_o.

#AdHocProblemsMatter
»
4 года назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

antontrygubO_o you are a great problem setter!!!!we also enjoy those regular contest......actually we always want more contest/////

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

keep it up bro

»
4 года назад, # |
  Проголосовать: нравится -18 Проголосовать: не нравится

Stop using hash tags they are so childish and cringy.

»
4 года назад, # |
  Проголосовать: нравится +357 Проголосовать: не нравится

I am delighted with the responsibility, diligence, sense of style, and generally the work of antontrygubO_o. He is great! I am very glad that he is a problem coordinator. Some participants like his style more, some participants like it less. But this vision has a right to exist and is interesting to many. Thank you, Anton, for your work!

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +31 Проголосовать: не нравится
#AdHocProblemsMatter

I've noticed that I enjoy Codeforces/Atcoder problems a lot more than other problems, like Codechef, Code Jam, and local onsite competitions. One of the reasons is because they value problems that are original and enjoyable to solve. I think people overestimate how hard it is to create problems that are <= D level, use dp or ds, and be original.

»
4 года назад, # |
Rev. 3   Проголосовать: нравится +7 Проголосовать: не нравится

I would like to express my gratitude and appreciation to the present CF coordinator antontrygubO_o for the great job he is doing to make high-quality and beautiful competitive programming rounds, and I would like also to express my best wishes for him to keep these excellent endeavors going.

»
4 года назад, # |
Rev. 3   Проголосовать: нравится -16 Проголосовать: не нравится

[Deleted]

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

antontrygubO_o I love your problems, please don't stop!

»
4 года назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Just dont stop antontrygubO_o :)

»
4 года назад, # |
  Проголосовать: нравится +159 Проголосовать: не нравится

antontrygubO_o I don't care about your problems, please do whatever you want!

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

The reason why we love CF is the consistency of some really good and variety of problems in all the contests. He does a great job in Coordinating the rounds. Full Support to him.

»
4 года назад, # |
  Проголосовать: нравится +340 Проголосовать: не нравится

No guys, Ad Hoc are ok, but you should remember that #AllProblemsMatter.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +19 Проголосовать: не нравится

    I think only problems that are interesting to solve for at least somebody matters...

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится -27 Проголосовать: не нравится

    I understand what you're getting at, but this hashtag is in response to the huge backlash against Adhoc problems, and #AdhocProblemsMatter does not imply that other problems do not matter. It is simply an attempt to show that Adhoc problems have an important place in CP too.

    This is like saying #BlackLivesMatter should be replaced with #AllLivesMatter. Such hashtags are just designed to show that the subject in question is important as well, and does not mean that it is the only thing that is important.

    • »
      »
      »
      4 года назад, # ^ |
        Проголосовать: нравится +9 Проголосовать: не нравится

      It's pretty childish to compare some discussion about problem types with racial injustice issues in US.

      • »
        »
        »
        »
        4 года назад, # ^ |
          Проголосовать: нравится +65 Проголосовать: не нравится

        I actually very much agree with KabirKanha's analogy and don't see anything wrong with comparing simple and important things.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится -15 Проголосовать: не нравится

          +1, upvoted KabirKanha

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится +71 Проголосовать: не нравится

          OK, I believe you don’t have any other intention than an innocent analogy. Then I will now proudly go for #DataStructuresMatter

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
              Проголосовать: нравится +63 Проголосовать: не нравится

            I agree with ko_osaga ofc. Last times there are more and more contests with Ad-Hocs only, while in the past everything was OK. There were also Ad-Hocs, but there were no more of them that of any other problems, so trying to remind people that #AllProblemsMatter or even #DataStructuresMatter makes more sense.

            • »
              »
              »
              »
              »
              »
              »
              4 года назад, # ^ |
                Проголосовать: нравится -11 Проголосовать: не нравится

              Let's be honest everybody have their strong and weak points and if a contest has all math or dp many might not like it for the same reason. So a well prepared contest is only that one which has a problems of a lot of variety and category and can test out many. A contest can surely and must have a problem related to Adhoc Category but if all the problems are based on that, Nobody will like it.

              I support antontrygubO_o in making more and more amazing problems but I hope they will have belong to a wide range of categories. I have been missing graphs problem for quite-sometime now :)

            • »
              »
              »
              »
              »
              »
              »
              4 года назад, # ^ |
                Проголосовать: нравится +20 Проголосовать: не нравится

              I'm definitely on board with #DataStructuresMatter. But let's not go overboard here. Some problems are just bad. In some of the recent AtCoder Beginner Contests, problems B and C are often like "Well yeah okay I guess I can code this, but if I do can someone give me these 3 minutes of my life back at least?"

              The point I'm getting at is that #AllProblemsMatter is really easily countered with #SomeProblemsSuck.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +103 Проголосовать: не нравится

    yeah, I agree with this. I can understand the overwhelming support of LGM's for ad-hoc problems because most of them would have probably done 100's of problems on DP, graphs or data-structures and now find them boring and hence are looking for something new in ad-hoc problems. But that is not the case with most of the other guys on codeforces and non ad-hoc problems may be exciting for them. Also I don't understand why do many people seem to believe non ad-hoc problems are just about typing 100's of lines of standard code. More often than not, they involve a decent amount of thinking as well.

»
4 года назад, # |
  Проголосовать: нравится +74 Проголосовать: не нравится

I like ALL the problems in the contests! No matter adhoc/not-adhoc, 1/100 lines of code, math/nomath etc.

More problemsetters -> more problems -> more contests -> more fun!

antontrygubO_o keep going!

»
4 года назад, # |
  Проголосовать: нравится -62 Проголосовать: не нравится

Who else hates Um_nik , all his blogs and comments?

  • »
    »
    4 года назад, # ^ |
    Rev. 2   Проголосовать: нравится +39 Проголосовать: не нравится

    I don’t. antontrygubO_o ’s problems are really good, he shouldn’t give up with problemsetting, but I totally agree with anonymous_Bunny ’s comment. We still should check different areas of skills and not make contest focused on math/puzzle solving.

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

I think it is time for Anton Trygub fan-club guys...

»
4 года назад, # |
Rev. 2   Проголосовать: нравится -89 Проголосовать: не нравится

One great feature of "ad-hoc" problems is that they minimize the advantage of someone who has a library, or has more experience (which is essentially like having a library, just a mental one) while having the same problem solving skill as someone who doesn't have those. If anything, "ad-hoc" problems remove this what I would consider an arbitrary advantage, and that's a great thing.

When people say "I like problems where I need to tweak a data structure/have non-trivial implementation", I want to ask — why? What exactly makes these kind of problems great, aside from giving an advantage to people who just participated in more contests/know more theory. I don't think it's good to give advantage to that kind of trait — it's relatively easy to learn yet another data structure that someone else invented than it is to improve an actual problem-solving skill of oneself.

When you take away all the non-original aspects of a "non-adhoc, data structure/algorithm" problem, i.e. remove application of a well-known algorithm/data structure, what is left is probably something "ad-hoc" — "change this specific aspect of this algorithm to fit these specific requirements". How is this not just "ad-hoc" with extra steps? (extra steps that not only waste time, but also give an arbitrary advantage to some people)

If anything, I think every new Codeforces account should be sent a link to an "approved" library with all of our usual suspects — segment trees, graph/tree traversals, etc. etc., so people don't compete on whether they saw a data structure before and have it ready in their library. Because that's a silly thing to compete on.

antontrygubO_o, keep up the great work!

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +43 Проголосовать: не нравится

    never heard that much stupidness

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится -6 Проголосовать: не нравится

    Except for the last paragraph, where you were really silly :P, I agree with you.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится

    minimize the advantage of someone who... has more experience... and that's a great thing.

    Wtf is wrong with you. So should we make math contests just about arithmetic so it is equal playing field for everyone and not dependent on knowledge? This is the stupidest comment I've ever seen on cf. Having more knowledge is what differentiates the best from the average, and allows for more interesting problems.

    The worst part, is you call it an "arbitrary" advantage. It's not arbitrary, it's called practice. If you think practicing should not make you better than someone without practice, you're literally crazy. I hope you never have the chance to organize any sort of competitive activity.

    And for your information, I like non-trivial impl because that's the contest i signed up for, a competitive "programming" contest.

    • »
      »
      »
      4 года назад, # ^ |
      Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

      First, watch your language.

      Second, you are deliberately leaving out the crucial part of my argument. I didn't just say "minimize the advantage of someone who... has more experience", I said "minimize the advantage of someone who... has more experience while having the same problem solving skill as someone who doesn't have those.

      In other words, I believe that if two contestants have the same problem-solving skill, they deserve the same rating. Someone who spent years on a platform/solving competitive programming problems without -- I repeat for the people in the back -- * without making more progress in their problem solving ability* should not have a higher rating than someone who obtained the same level of problem-solving skill with less knowledge of specific algorithms, less time spent on the platform, etc. etc. Basically, I am in favor of minimizing the effect on contest performance of anything other than problem solving skill. Hope this clarifies your confusion.

      And for your information, I like non-trivial impl because that's the contest i signed up for, a competitive "programming" contest.

      That's a reasonable argument, but by no means an obviously correct one. The fact that it has "programming" in the name isn't really meaningful in itself -- the code is just a medium; all "competitive programming" says is that you compete in writing (short, ugly, not-at-all like in real world) programs -- it doesn't really imply anything about the nature of the competition and what it should screen for. Your preference for implementation is fine, but what I'm saying is that if you enjoy implementing standard algorithms/data structures and you actually do that during a contest, at the very least you are putting yourself at a disadvantage against people who have this saved somewhere in their library. I mean, good for you, but willingly putting oneself at a disadvantage sounds weird to me.

      You have a right to your preference just like a have a right to mine, and I don't see a reason for getting so sensitive because someone stated a preference different from yours.

      • »
        »
        »
        »
        4 года назад, # ^ |
        Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится

        You act like having problem solving knowledge is completely separate from the ds/algo knowledge, but ds/algo's just allows you to work on more complex problem solving by having more solid foundations, ie knowing fundamental problem solving techniques in cp domain. If you disagree with that someone who knows more of these ds/algos should be higher rated than someone who knows less dsa but has "the same problem solving skill" (I think the one with more dsa knowledge would actually have more problem solving skills then?), do you think imoers should automatically also be gm as soon as they try cp? Sure i'll agree they will learn faster, but cp should have cp specific fundamental domain knowledge as it is a separate contest, and I disagree with people who think knowing more dsa/algos does not make you have better problem solving skills. In my opinion, if two people are equal at ad-hoc but one knows way more dsa, the one who knows way more dsa is far more skilled and deserves higher rating.

        And also I don't prefer implementing well known algo's that are copy pastable, that is still trivial impl... Longer does not necessarily equal non-trivial. Some people don't seem to understand that you can have harder problem solving and harder impl.

        Also, "First, watch your language.", bruh this is the internet.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится +25 Проголосовать: не нравится

          Learning algo/DS could improve your understanding of underlying concepts but it doesn't by default. I believe there are people who "learn" data structures by memorizing the code and "practicing" on special problems which require using this particular data structure. While the real struggle is understanding how to apply some data structure to the problem.

          I learned Segment tree approx the same time as I become red. I'm still afraid of writing HLD while there are cyans who can easily write HLD. But I'm pretty sure that in real problem which requires reduction to HLD (i.e. think and then apply HLD) I have decent chances against any cyan that knows HLD even if I will need 3x much time to write the data structure itself. Because knowing the data structure doesn't really show you how to solve problems using it.

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
            Rev. 2   Проголосовать: нравится +47 Проголосовать: не нравится

            I don't disagree, some people definitely just memorize without being able to apply, but I would argue you don't really know the dsa if you can't apply it, you have merely just heard of it and can copy it. But I think it is silly to say people who truly are able to use dsa in creative manners do not have any new problem solving skills, as they have another problem solving tool they can use which puts them ahead of those who don't.

            What's the difference between think and then sort by correct value, something I see more and more in easy problems, vs think and apply hld? I would say neither are very fun problems, and also you would easily beat cyans at both since you would see the reduction quicker, if they could see it at all, since you are better at solving problems involving both those concepts so in the end you know hld much better than them.

            However I do want to say I don't want to take away from the article, anyone who's willing to take time out of their life to make problems and organize contests definitely deserves recognition and praise, antontrygubO_o orz. I'm just merely stating throwing dsa aside as worthless knowledge entirely, or merely as a necessarily evil, I think is kind of ignorant against a large part of cp.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
          Rev. 2   Проголосовать: нравится -9 Проголосовать: не нравится

          If you disagree with that someone who knows more of these ds/algos should be higher rated than someone who knows less dsa but has "the same problem solving skill" (I think the one with more dsa knowledge would actually have more problem solving skills then?), do you think imoers should automatically also be gm as soon as they try cp?

          Hmm... yeah? Why not? If someone who's proven they are obviously smart and world-class at problem-solving, doesn't succeed at your game of supposedly problem-solving, then it's not really selecting on problem solving, is it? Curious, why do you bring this up as something that's obviously bad or even insulting? What's up with the gatekeeping, lol? Sounds like someone might be a little insecure.

          Again, it's a reasonable to want to also screen for some sort of domain-specific knowledge. I disagree with this notion, but it's a matter of taste, and I don't think you're moron for wanting this. But at least I provide some sort of reason for my (subjective) viewpoint — I think problem-solving skill should be the deciding factor, and the rest is, as you correctly pointed out, necessary evil. Because the problem-solving part is where the fun is, and where the challenge is. I'm yet to hear the reasons why some sort of barriers to entry in the form of having a baseline volume of theory known or memorized is good for the competition.

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
            Rev. 2   Проголосовать: нравится +16 Проголосовать: не нравится

            Let me put it this way. Do you not think building upon the work and problem solving of others does not help you to solve more complex problems? This is what dsa does, allows you to solve more complex problems than you would be able to entirely solve with no pre-req knowledge within a contest span. And because it is a cp contest, it makes since the pre-req knowledge is cs related, hence dsa.

            Also "problem solving" is not some pure abstract notion. It is having a creative and advanced applied knowledge to a field. Just because you are good at "problem solving" creative ways to cheat on a test doesn't mean you should automatically be gm either. This is why imoers with no dsa knowledge should not be gm immediately, they are world class problem solvers in math, a related, but not the same field as cs.

            • »
              »
              »
              »
              »
              »
              »
              4 года назад, # ^ |
                Проголосовать: нравится -6 Проголосовать: не нравится

              Do you not think building upon the work and problem solving of others does not help you to solve more complex problems?

              It does. And yes, that's an excellent (and, in my view, the only valid) reason to have algo/ds in problems -- these are tools to add necessary complexity to make the problems hard enough for the given level. Again, hard enough not because you need to implement bunch of "update()", "query()", "select()" methods available in the textbook, but because these structures have enough nuance to make interesting problems out of these nuances -- i.e. relationships to observe, changing the standard case in an interesting way, etc.

              But the bulk of the criticism Anton gets is that he doesn't have ds/algo in Div.2 ABCD. But he seemed to manage to have hard enough problems without a huge ds/algo component, so I don't see what's the issue! People are not complaining that his problems are trivial, but rather, most of what I'm hearing is that they don't write as much code anymore, and therefore somehow these problems are worse. That I disagree with.

            • »
              »
              »
              »
              »
              »
              »
              4 года назад, # ^ |
              Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

              Regarding your second paragraph, I actually agree with you mostly -- I intended to follow up on this point myself but you raised it.

              I agree that competitive programming is domain-specific problem-solving. But I think that specificity is achieved not because there's some prerequisite knowledge involved, but because of the nature of the problems and the competition:

              • Competitive programming makes you better at solving problems whose solution can be expressed as an algorithm. That's, like, pretty specific in itself.
              • Moreover, there's almost never any randomness/prediction component to it -- the solution has to be deterministic enough to enable automatic checking.
              • Third, we all know that the solution actually exists. This sounds like a silly point, but I argue it actually isn't -- this is very different from many, many areas of problem-solving.
              • There's way less emphasis on proving things — one can get away with intuition/hand-waving in a lot of cases.
              • You don't really compete against other people in the sense that their actions don't influence yours and vice versa, i.e. there's no game-theoretic aspect to it.

              These are just 5 that I rattled off immediately off the top of my head without thinking, and I'm sure there's more. If you think of a math olympian, you can immediately see that they might need to catch up on #1, and might be too fixated on #4, so yeah, they will still have to do some domain adjustment. Just like a world-class competitive programmer will not immediately make a final table at World Series of Poker, because of #2 and #5 (but with some practice, they should!).

              Note that at no point I mentioned ds/algo knowledge. There's enough domain specificity to go around without those.

              • »
                »
                »
                »
                »
                »
                »
                »
                4 года назад, # ^ |
                Rev. 2   Проголосовать: нравится +13 Проголосовать: не нравится

                I disagree with #1, besides that, I agree with you. Even with my example, when figuring out a way to cheat on a test, you're performing an algorithm which is a series of steps to solve the given problem, my point being using an algo is very broad. Similarly, if you read an olympiad combinatorics book, you will see that math oly has nearly the same problem as the ad-hoc problems that just rely on invariants and monovariants, which are a large part of the recent problems. I've always believed dsa is what seperates cp from math oly, otherwise cp just looks like a less rigorous subset of math oly except with impl, which I think would be kinda sad and something I do not want. I would just argue the nature of the competition is being able to apply a variety of of logical structures and mindsets, a large part of them being dsa.

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  4 года назад, # ^ |
                    Проголосовать: нравится +5 Проголосовать: не нравится

                  I've always believed dsa is what seperates cp from math oly, otherwise cp just looks like a less rigorous subset of math oly except with impl, which I think would be kinda sad and something I do not want. I would just argue the nature of the competition is being able to apply a variety of of logical structures and mindsets, a large part of them being dsa.

                  I see. Hmm, this aspect I haven't really considered before. Thanks for sharing.

»
4 года назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

Awesome problems . #AdHocProblemsMatter

»
4 года назад, # |
  Проголосовать: нравится -13 Проголосовать: не нравится

Please join Eva Krauze antifanclub

»
4 года назад, # |
Rev. 2   Проголосовать: нравится -47 Проголосовать: не нравится

Just I want a guide that recently I will after 3 to 4 months I may appear for my interviews for jobs/internships. So shall I continue solving this Div2 A to E or go preparing on Leet Code for my interviews with quite only ds/algo required problems.or Partially do both. I am bit confused by blogs on codeforces, someone say doing Ad-hoc is also better than solving ds/algo. Some say that ds/algos are much better. I am confused please someone guide me that what shall I do for coming months . Codeforces Div2 contests or just practice Leetcode. I hope my question is clear to all.

PS:- Or if Someone give me a problemset where adhoc is balanced with Algo/Ds then also it would help me.Means are there any problem practice sets which have balance of both algo/ds with ad-hoc in the problems .50-50% or 60%-40% balance will also be Ok to me.

»
4 года назад, # |
  Проголосовать: нравится -41 Проголосовать: не нравится

I dislike too many constructive problems. It's like eating only rice for an entire month. while some people don't mind, I do. Just my opinion.

»
3 года назад, # |
  Проголосовать: нравится -6 Проголосовать: не нравится

The quality of questions in contests coordinated by Anton was simply superb and would love to see more of them in the future. Kudos to them for all the great work. :)