web_developer's blog

By web_developer, 4 years ago, In English

Hello Codeforces community, hope all of you are doing good. I wanna ask, is seeing editorial of any problem that you can't solve after spending 15 minutes on it a bad habit? Please make me know if someone of you did this and became better because I am considering it a bad habit and I am despondent about it. All the suggestions are appreciated. Thanks!

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

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

15 minutes is definitely too short. The optimal time has been discussed many times in different threads, and I personally think it's to an extent a personal preference, but as a rule of thumb I'd aim for at the very least 1 hour of solid attempts before looking up the editorial.

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

    Yeah, you are right that 15 minutes is too short, but many times I felt while solving problems in a contest or while in a practice that I have already seen that problem's editorial and that's why I can solve the problem. So I feel that as many problems you will see or editorials you will see, you will become better and better. Sorry if I am wrong.

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

      That's probably more common for easier problems because they are often straightforward application of some known algorithm or data structure. You should just learn the corresponding algorithms and data structures and their common applications rather than specifically remembering editorials.

      By reading a lot of editorials and solving new problems by applying the editorials you've read, you're training your memorization skills. While they absolutely are necessary, they are far from sufficient for harder problems. Thinking for a long time on a hard problem develops your creativity and intuition in problem solving, which is necessary for more difficult problems.

      Finally, if you always give up after 15 minutes, you're conditioning yourself to quickly give up when a problem is hard and unfamiliar. This is something I see very often in newer competitors — when they encounter a problem that they can't immediately solve, they just shut down. The truth is that really hard problems are meant to take a lot of time, it is just unrealistic to expect to be able to solve any problem in the first 15 minutes, regardless of how good you are. Therefore if you want to become really good one day, your brain must learn to push through the lack of ideas and persist in its attempts to solve a problem, even if it takes a long time.

      Bottom line is, if your goal is to be blue in Codeforces, then most of this doesn't really matter — any consistent practice should suffice. If you have ambitions to reach orange/red or want to take part and do well in competitions such as IOI, then you must practice deeper thought.