decoder__'s blog

By decoder__, history, 4 years ago, In English

Hello peeps, I'm doing codeforces for some time now. But I'm not able to rise the ladder. What should be my strategy to rise the ladder efficiently? Right now I only do codeforces problems. Should I practice from some other online judge as well.I'm struggling. Please help. Thanks in advance

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

| Write comment?
»
4 years ago, # |
Rev. 3   Vote: I like it +7 Vote: I do not like it

A2OJ ladders are good practice. You can also try CSES Problemset.

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

    Thanks for the reply. But I'm looking for something concrete, which I can blindly follow and rise up the ladder.

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

      In my opinion, if you blindly follow one resource, then your growth will be slow. Rather I recommend you practice from different resources as each has its strengths and weaknesses. Also, it gets boring practicing from the same resources.

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

Register again.

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

This strategy may help you-

Set the problem rating(both min and max) to 800. Solve all recent problems of that rating.

The number of problems for every rating could be-

5 if u very comfortable and get ac in very first go.

10 if u can solve all of them without editorials.

15-25 in any other case.

After solving these numbers of problems for a fixed rating increase the difficulty by 100. There is no issue if you need to see editorials frequently! Don't ignore problems of a specific domain/topic.

For contests- Initially,you could follow a strategy where you aim to solve more number of problems rather than aiming towards speed. After getting a WA, read the question again calmly giving minimum 5-10 mins to understand the task.

Once you are comfortable in solving problems till 1300 rating you will see your color changing soon.

Last piece of advice- Just solve more! Don't compare yourself with others! Be consistent and practise daily!`

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

You can try Hackerrank and hackerearth as well. Try to push your level. If you are able to solve problems of difficulty rating 1400 then try to solve 1600-1700 difficulty rated problems on codeforces. If you are not able to solve it then look the editorials for hint and learn something new. Suppose in the editorial they used term which you don't know then google it and solve some problems on that topic to have the basics clear (for example, in the editorial the term "trie" is written and you don't know about its implementation and applications, then search it in google else you can go to hackerearth or hackerrank website and practice the basics from there). Also after giving a contest try to solve atleast one problem which you could not solve during the contests.

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

// if you rating is below 1400 and you don't want to read hell of theory before getting upto expert you can follow this //

1> there is only single 100% guaranteed strategy for anything. practice in the same environment daily in which you want to ace. luckily cf provides that (virtual participation) .

2> don't participate on more than 2 platform (upto expert) because in that case u can not evaluate if you are improving or not because every community has different rating mechanism.

3> participate in 1/2 virtual daily and take it like the real contest , give your best shot in 2 hrs and then its time to gain new skill (always solve the question after contest you got stuck during contest).

3.a> learning from editorial is best if you can , but there is 50% chance that u will get the idea behind that solution but unable to code on your own.

3.b> for that purpose make friends(5-10) on cf who regularly participates in cf recent contest and their rating is +100/200 to your rating . and everytime when you get the solution but can't code it, try to learn from their code (their is 90% chance u will get their solution )

4>don't run for best solution after the contest because u can not write that anytime in near future try to get to that solution which is closest to your idea and coding style.

5>don't waste more than 2/3 hour on single problem because u need to solve as much as you can instead of solving couple of out of league problems.

6> don't learn too much of theory that will spoil your interest but basic data structures , basic mathematics and ability to write bruteforce is must and sufficent .

7> once you get the confidence(which is result of your performance in contest) you yourself get capable of deciding of weather you should solve on oj's/atcoder/cf/etc

// and always remember start is the toughest phase once you start to get rolling everything is fun //

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

    Do you suggest giving virtual contest over solving a2oj ladders for practice if I can sometimes solve Div2 A and rarely B ? Thanks

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

      you have to practice tougher problems (don't feel demotivated if you can not solve it on your own solve it with the help of editorial). solve on both platforms but keep your ratio of easy medium hard problemset balanced .

»
4 years ago, # |
Rev. 3   Vote: I like it +2 Vote: I do not like it
After almost 8 months struggle i made specialist..
1. first i told you to solve more & more problem with dificulty which make you comfortable.then go up by dificulties step by step.
2.If you good at number theory,simple constractive problem and all basic knowledge then just need to upsolve..By upsolving you also learn so much thing too.
3.i try to solve problem under 1400/1500 dificulty to make specialist  in codeforces ( i solved 700+ problem..but now easy to solve more for quarantine..now For me A B are easy and C sometime)
4. Good luck
(sorry for bad english )
»
4 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

I was also having same hard times like yours when I was unable to solve B in Div2 rounds. I would suggest you to take as many virtual contest as possible.

I was reading the previous comments and noticed that no one is taking about the problem tags. Problem tags takes an important part in deciding the difficulty of the problem (for e.g. 1500 problem of sorting is much easy then 1500 problem of dp, graphs or trees).

In my opinion you should choose some easy topic tags for now like 'implementation', 'brute force', 'sorting', 'math', etc (of course set difficulty according to you comfort) and command on these tags by increasing difficulty step by step.

(You can select tags and change difficulty form the filter on the right side of the Problemset, incase you don't know)

Mostly Div2 contest follows the following trend:

  • A-difficulty between 800 to 1200 with tags including 'brute force', 'implementation', 'math', 'sorting' (rarely), etc.
  • B-difficulty between 1200 to 1500 with tags including 'binary search', 'data structure', 'divide and conquer', 'strings', 'combinatorics', 'greedy', etc.
  • C-difficulty between 1400 to 1800 with tags including 'dp', 'dfs', 'trees', 'graphs', 'bitmasking', etc.

"Happy Coding :)".

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

    I am currently doing Atcoder beginner contest problems C, D, E for improvement as mentioned here https://drive.google.com/file/d/1J2x8pIYQ3MXANgvzOgBciWd3d79j_Exa/view. Is it a right approach?

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

      You can practice on whichever site you are comfortable with but don't forget to take as many contest (live or virtual) as possible on codeforces or atcoder.

      Once you are able to understand and code Atcoder beginner contest problems C, D, E well without editorials you can switch to codeforces problemset and follow this.

      "Happy Coding :)"

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

Try learning some theory and solving problems on each topic that you learn!

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

    That is going to come with a lot of practice. Try to solve 3-4 B problems everyday and when you are confident with B probs go for C.

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

Why only rise your ladder upto specialist? Your thinking/determination also depends a lot in your progress.

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

Solve problems fastly in contests .Practice on A20j ladders.