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

Автор rob00, 39 часов назад, По-английски

I've just hit my goal of reaching yellow on Codeforces. Thus, I'm celebrating by sharing with everyone what I've learned over the years while trying to improve.

I've done a lot of research on my own when I was at a lower rating, constantly googling and looking at blogs to try to come up with the "optimal practice strategy", and failed every time. So, I think my experience in failing is going to be very valuable to a lot of people reading this.

Let's imagine a very simplified case of what happens when we're doing a problem. When solving a practice problem, these combinations of things can happen:

  1. Solve? Yes/No
  2. Tried a lot of ideas? Yes/No
  3. Used the editorial? Yes/No

Now, here are the simplified rules I follow to tell if I'm improving or not.

  • If you did not solve, did not try a lot of ideas, and did not use the editorial: you did not improve.
  • If you did not solve, did not try a lot of ideas, and did use the editorial: you did not improve.
  • If you did not solve, did try a lot of ideas, and did not use the editorial: you did not improve.
  • If you did not solve, did try a lot of ideas, and did use the editorial: you did improve.
  • If you did solve, did not try a lot of ideas, and did not use the editorial: you did not improve.
  • If you did solve, did not try a lot of ideas, and did use the editorial: you did not improve.
  • If you did solve, did try a lot of ideas, and did not use the editorial: you did improve.
  • If you did solve, did try a lot of ideas, and did use the editorial: you did improve.

In other words, you can tell if you improved by: (tried a lot of ideas) && (solved || used editorial)

In my experience, this has been an easy, simple, and accurate test to determine whether a practice strategy works (or not). For example, let's think about some of the common tips for improving and think about why they work: solving problems around your level. When you solve problems around your level, it typically takes 20-30 min+ of trying your own ideas, and you finally either solve it or you fail and read the editorial. According to my rule, you improve in both cases anyways, so this is an effective strategy.

Now, what strategies don't work? Let's think about solving problems that are too easy. You get the right idea in maybe around 5 minutes, maybe implement, and you're done. You didn't try a lot of ideas. You didn't improve. Now, how about problems that are too hard? You try maybe one or two ideas, get stuck, and can't think of anything else. You didn't try a lot of ideas. You didn't improve, regardless if you try to read the editorial or not. What about studying a lot of algorithms in your free time? You're only reading ideas, and not trying a lot of ideas of your own. You didn't improve (however, the rules imply you do improve if you try to come up with the algorithm on your own first, then read about it after).

But, why is trying a lot of ideas on its own not sufficient for improvement? Because if you don't resolve why those ideas do/don't work, they were pointless. That's why reading the solution or actually getting an AC after you've tried ideas is necessary, because you confirm whether you were right or not.

Finally, I know improvement isn't just a simple yes/no, but I think my heuristic (?) is a very solid starting point for many people here struggling to understand why they're not seeing the results they want.

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

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

If you use editorial then you did not improve, regardless of first two factors.

What about studying a lot of algorithms in your free time? You're only reading ideas, and not trying a lot of ideas of your own. You didn't improve.

lol

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

    Interesting. Could you share why? The reason I don't agree is because sometimes your intuition/ideas you believed to be true were actually wrong, and the editorial can be very helpful to realize that.

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

      because my intuition is always correct

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

    I disagree, I read editorials for most of problems i solve when practicing and I would say I have improved quite a lot in the last 2-3 months

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

    Lol, this guy got downvoted hard

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

so basically what you're saying is that $$$3, 6, 7$$$ are good numbers?

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

The solutions provided in the editorial are often not obvious. I have often seen grandmasters resort to brute force solutions, even when better approaches exist for problems A, B, and perhaps C, as mentioned in the editorial. Trying to understand the editorial can be time-consuming and "may" not yield any benefit in my case. Often, reviewing a few winners' solutions—especially those who submitted the fastest—can provide insights into whether I am missing important facts or recurring patterns that they already know, which can help avoid wasting too much time if that pattern or idea repeats.

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

    I agree. Some editorials can be confusing. I used editorials as an example, but the main point of my blog is you should be trying to correct or disprove your own ideas that you come up with, and there are many more ways to do that than just editorials (asking others, getting WA/AC, looking at tests).

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

      As a newbie, even reading B takes me complete day sometimes and yet I do not get it or do not get it in a way that I can do it in future if I face a similar thing. It's pretty random for me. Once or twice I have solved till C too by my self in actual contests. Like you can take today's contest only, Global round 27, solved the first fast(according to my speed) but wrong answer twice on 2nd question. Reading the editorial, I really don't know will help me optimize the skill in future. These are the types of optimal strategy questions and the optimal strategy cracking requires something that I haven't figured out yet.

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

If you did not solve, did try a lot of ideas, and did not use the editorial: you did not improve.

why

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

Thanks, will implement this into my practice route.

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

Good way to get it across!

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

A note : All the you did improve. are not same. Lets keep aside the problems that you solved, without trying much (If you did solve, did not try a lot of idea)

Solving all by yourself > Solving with minor hints from editorial or other sources > Solved after seeing major part of editorial, or the whole editorial.

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

    My point is your goal should be to get the problem solved by yourself. Not to keep trying till you "satisfy" yourself that you have tried enough, and Its okay to see the editorial now.

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

    Dude why are you trying to give tips. You are specialist ... Didn't even bother to explain why x>y>z.

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

      Why should that matter? If the advice is good it doesn't matter who is giving it. It is true that people with higher ratings have more experience and can therefore give better advice, but that doesn't mean that just because someone had xy rating or xy rank, their opinion is automatically invalid.

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

        Problem is this guy repeats some very known advice given by reds. The dude likely spends his day reading blogs on how to improve. Now he gives useless advice trying to get recognition as the reds altough he is just an alright cp-er and clearly doesn't follow said advice.