thisIsSparky's blog

By thisIsSparky, 5 months ago, In English

I am going to take a challenge of being pupil in 30 days. I will write my progress everyday. Recommend something which will boost this progress. day-01->i have practiced 4 problems with my own effort , learned some new topics on binary search ,still practising :) day-02-> not something special wasted a lot of time . day-03-> give two contests one of them in codeforces rating stands 726 many more to go :3

  • Vote: I like it
  • -20
  • Vote: I do not like it

»
5 months ago, # |
  Vote: I like it +34 Vote: I do not like it

This is my preferred way of practicing for codeforces:

Every time you practice, upsolve one problem from a live contest you did in the past. Try hard for up to a full day. If you fail just try again in 2-4 weeks. Reading editorial is forbidden until after 3 tries (6 to 12 weeks).

If you ever read an editorial (which should be a rare luxury), try to get as much as possible out of it. Ponder why you didn't find the solution yourself. Ask lots of questions, try to incorporate ways of thinking that will help you come up with the solutions by yourself (if you didn't know some piece of theory that's ok, it will happen from time to time. Just go and read some tutorial about it).

After reading an editorial implement the solution without looking at the example code. Then look at the example code. Is it simpler? If so, why?. Look at solutions by the best in the world, compare with yours. Try to learn from them.

There are no magic tricks. Not sure about the 30 day deadline, but you will get better over time.

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

    I think this tactic will make you lose some essential informations you could you use in other contests

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

      What do you mean?

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

        so practically if you wait 6 weeks to see an editorial you will lose the information you could have learned in that editorial and use in a contest

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

          I see what you mean but I think you don't lose any information. The idea is not that you try a problem then rest for two to four weeks until you try again.

          Instead, you keep trying and retrying other problems, possibly read some older editorials, get better, and maybe end up solving the problem in question without even having to read the editorial.

          It's like a concurrent system, you have to think in terms of latency and throughput to get the full picture.

          You say it's worse because it has higher latency, but the throughput is the same and this strategy forces you to think deeply and solve harder problems which makes for higher quality practice.

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

            I think your approach is good for people that already have a solid foundation. For people that are new, this approach won't work well, though. Maybe they are stuck on a problem, because they don't know binary search, prefix sums, stacks or sorting. Maybe their input reading/output writing is causing a TLE.

            The editorial is a good place to find out which essential topics are missing. At cm, you probably know exactly what you are missing and how to improve. As a newbie not so much.

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

    I don't read the editorial even if I haven't solved the problem for a few years, after that I finally solve it

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

    I have recently thought of following approach to practice: read editorials to hard problems (after thinking about them for a short period of time), try to understand and implement author's solution and therefore memorize the solution. When actually participating in a live contest try to recall similiar problems to those that are given in contest. Since you have read and understood many editorials you will recall at least some. Therefore it will be easy to solve new problems. I think such approach might work since most of problems use same techniques, same ideas. Did anyone try memorizing many editorials?

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

if you have fun applying additional pressure, sure, go for it. If you already struggle with contest anxiety or something similar, change to another goal that motivates you.

Example: I looked up your problem-history with https://cfviz.netlify.app/ — you seem to be able to reliably solve 1100-1300 problems. If I were you, I would probably solve 1100 problems for 1 week, 1200 problems for 1 week, 1300 problems for 1-2 week and 1400 problems for 0-1 week. You may want to use a ladder to find problems: https://www.acodedaily.com/

If this is not enough for you, you may want to spend additional time learning essential topics. Codeforces EDU Section Binary Search (Step 1-3) should be relevant for your current rating.

Besides that, there may be other topics good for you, but it really depends what you struggle with. You are using c++, are you comfortable with arrays, vectors, maps, sets, sorting in O(n log n), stacks, queues and their respective time complexities for lookups, insertion, appending, deletion, etc?

Solving 20-100 problems, completing the EDU section problems and learning about the time complexities, for example, would be a good neutral goal. You would be better afterwards, but without any unneeded pressure. This is a methodical approach though, maybe its not fun for you, its really up to you to decide. Just make sure you practice in a fun, but meaningful way.

»
5 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Here you will find some resources as well as guidelines. Hope this will help you. https://codeforces.com/blog/entry/122788

»
5 months ago, # |
  Vote: I like it 0 Vote: I do not like it

I think it's very easy:)

»
5 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by thisIsSparky (previous revision, new revision, compare).

»
5 months ago, # |
  Vote: I like it 0 Vote: I do not like it

ok someone has told me to update this everyday not to write a blog everyday so i will update this everyday.thank you :)