Aditya_99's blog

By Aditya_99, history, 2 months ago, In English

Dear Fellow programmers, I need help in forming a strategy to practice. I have solved ~190 problems on hackerrank, 200 — 210 problems on SPOJ (I had to see the editorial in many of them for the optimization required),it helped me by introducing new and useful data structures and algorithms. That indeed help me in reaching 3 star on codechef with a rating of 1678 (max. 1784) . I have even solved ~450 problems on codeforces as of now, but still perform bad in div 2 contests and my rating keeps decreasing. Although many fellow coders suggest to not to look up for one's rating instead practice for it, but I feel that ratings are a direct measure to evaluate one's growth , so it is really disheartening for me to see this constant decrement in the rating. My practice strategy (after coming to codeforces) is sorting (in an ascending order)the problems based on the number of users and then setting up a filter for ratings : x to x + 300 and then solving the unsolved problems.

So, can you please rectify if there is any error in my solving pattern or any suggestion that you would like to give in order to improve my problem solving abilities as well as learning new things efficiently.

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

»
2 months ago, # |
Rev. 2   Vote: I like it -13 Vote: I do not like it

Have you counted the average number of contests you have skipped in codeforces between any two consecutive contests you have given?

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

    Actually I am pursuing Master's degree (from tier 3 college) and also an internship (timings are 9.30 am to 6.30 pm) is going on along with this so I participate whenever I find time.

    • »
      »
      »
      2 months ago, # ^ |
        Vote: I like it -31 Vote: I do not like it

      You have to invest time to participate in contests regularly otherwise there will be no improvement

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

        Sure, will definitely try working out on this. Thanks for your suggestion.

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

        Untrue, look my rating graph

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

          Looking at your rating graph is only useful if you don't have any other codeforces accounts and you have never done any other competitive programming activities anywhere else. Is this really the case?

          Even if this is your only account, then solving 1 problem in one Div2 contest one day and then solving 5 problems in another Div2 contest just one day later was rather erratic and unreliable. It isn't unreasonable to think that your performance may improve with more contest participation experience.

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

            It's not "the other day", there has been like half a year of me practicing in other places (and no, i dont have other codeforces account neither participated in a lot of contests somewhere else in that timeframe). Also that div2 contest was kind of easy tbh.

            The point is that it's ridiculous to call out the gaps in someone's participation in contests and say that this is why they aren't improving, specially when people have lives outside of cp.

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

      Oh I am also doing internship and competitive programming I am doing high school instead, try solving 1400-1600 rated problems , It will take a lot of time to solve these rated problems but you will get better at these rated problems and the ones rated below

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

      I may not be the suitable person as i am also in struggling phase but what u can do is particapte in virtual contests.Give all div3 virtual contests. U should have a target that at the end of the month u must solve 100+ problems.

      • »
        »
        »
        »
        7 weeks ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        I think the problem with having a target number of problems is that after some time you begin to solve easy problems just to get to that target . Something that happened me. It's better to have daily target of selected problems

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

What about picking up a contest and upsolving till C  daily while learning new algorithms too..

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

Well I would say my condition is like yours. But just keep going someday you might get better :)

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

keep going eventually you become good

»
2 months ago, # |
  Vote: I like it +28 Vote: I do not like it
  1. You're not doing bad, trust me it will get better very quickly.
  2. Just in case you're not familiar with time and space complexities, do that. (I see you getting TLEs in problem A)
  3. Here's your stats:

Screenshot-from-2021-09-02-12-00-18

It's true you have solved a lot of problems, but you've solved too many A and B level problems. So I'd recommend you to solve more C and even D level problems and give more contests.

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

    Thanks , I will try and implement your suggestion.

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

    Where do you see these stats?

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

    Hey! Can you tell me what I should do for Improving my problem solving skill and Rating.

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

      Solve more problems

    • »
      »
      »
      2 months ago, # ^ |
      Rev. 3   Vote: I like it 0 Vote: I do not like it

      I had a look at your profile and noted the following points:

      1. STOP solving A, B level problems! You've solved enough, please only attempt C+ or D+ level problems while practicing.

      2. You have a LOT of wrong submissions! This will affect your contest giving skills. You should work on creating various test cases and trying them before submitting a problem. Your goal should be getting AC at first atempt majority of the times, and at second attempt in the worst case.

      3. Upsolving! Do read editorials and solve till at least problem D.

      4. You're mindblowingly consistent, so keep that up!

      • »
        »
        »
        »
        2 months ago, # ^ |
        Rev. 2   Vote: I like it +1 Vote: I do not like it

        Thanks for the helpful advice!

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

        Can you give some advice to me as well?

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

          You have given ~60 contests, but solved ~330 A level problems. This means you probably solved ~270 A level problems while practising.

          Why would you do that? During practise, you should only attempt problems that you'll really struggle with for an hour or half at least. That way you'll learn new things with most problems.

          Also do you upsolve as up as possible? If not, you might wanna do that.

          Otherwise you're not doing bad, just solve harder problems in practice, keep giving contests, reading editorials of ALL problems, and keep upsolving. (Also look at the implementation of the editorial if given)

          All the best!

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

        can i get one too?

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

          You have a LOOOOOOT of wrong answers brother. Sometimes you hvae wrong submissions when you fail the first test case itself! Do you not run the first test case in your computer before submitting?

          Anyhow, while solving problems, control your urge to just submit the code and patiently think of all the corner cases, generate a lot of test cases and test them. Also try to first prove why your logic is correct. (Like an actual mathematical proof)

          Otherwise generally: 1. Upsolve 2. Read editorials 3. See the implementation in the editorials 4. Try harder problems in practice, not A-B level, you've given enough contests, you don't need them.

          Overall you're not doing bad, and you have an inspiring consistency! All the best!

          P.S. I'm a big fan of the assistant to the regional manager too!

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

            I heard IIIT delhi was a very toxic place...but there are "A few good men" there too, who help others, like you. Nice.

            • »
              »
              »
              »
              »
              »
              »
              2 months ago, # ^ |
              Rev. 3   Vote: I like it 0 Vote: I do not like it

              Thanks for the compliment.

              I've been in IIITD for a year now, and I don't think it's a toxic place at all. In fact, seniors are unbelievably helpfull and friendly and everybody helps and respects each other.

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

            FACT: thank u so much ^_^

      • »
        »
        »
        »
        2 months ago, # ^ |
        Rev. 2   Vote: I like it +1 Vote: I do not like it

        Me me. Some advice for me too nathan__drake (sorry for ping) :)

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

          Hey... You've just started and you're doing good man. Just consistently give contests, upsolve in every contest, and practive problems that challenge you.

          Keep going!

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

            Sure, thanks. Although I have been doing cp for last 4-5 months. Started giving on codeforces from previous month.

      • »
        »
        »
        »
        2 months ago, # ^ |
        Rev. 4   Vote: I like it 0 Vote: I do not like it

        Hey !! Can I get some advice too !! I cannot implement the code by myself after looking at editorials..something to improve that? nathan__drake

        • »
          »
          »
          »
          »
          7 weeks ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          Heyy The only thing that can help with implementation is practice, implement a lot of problems.

          Other than that look at some data structures and try to implement them, and see their implementations afterwords. This will help you with clean implementation.

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

    Can you analyze my profile and give some advices, please? I'll be grateful nathan__drake

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

      You're pariticipating in contests in bursts brother. You just need consistency in contests and you'll see yourself climb very fast.

      Looking at your recent contest history, I think during practice you should solve only C (or higher) level problems right now.

      Happy upsolving! :)

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

        Thanks) Good luck

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

        hey can you please analyse mine as well..Thanks!

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

          Heyyy

          You're doing good and you're definitely growing. I think you've solved enough (100+) A level problems, so try solving harder ones (C or higher) now and learning new concepts. Otherwise mantain your consistency, upsolve, read editorials and you'll be good.

          Happy coding!

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

        hey can you analyze my profile as well and give some advices?

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

          Hey there...

          (I see you getting WAs on pretest 1, this should not happen, you must test your code before submitting and make sure your logic is correct)

          You've started recently and you're doing good. Solved a 100 level A problems so focus on solving B and C level problems of contests, and learning any new concepts that are mentioned in the editorial of those problems.

          Keep going!

»
2 months ago, # |
  Vote: I like it +1 Vote: I do not like it

you solved almost 320 question whose rating is <=1100 that's why your rating is not improved yet try to solve

=1200 and <=1400 you rating will automatically improve

»
2 months ago, # |
  Vote: I like it +28 Vote: I do not like it

Lmao why are soo many newbie giving tips on how to improve XD.

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

    then you should help him with your main ID....

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

i think that the quality is better than the quantity. solving one or two problems with rating >= 1200 a day is better than solving 10 problems with rating 800. don't read the editorial unless you spend a reasonable time on the problem(1 or 2 hours) and you run out of ideas. in my case i don't like reading the editorial, i just leave the problem and return after one or two months to see if i can solve it now or not.

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

    ok , sure thanks .

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

    Thats why after 1 year you are still a pupil....

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

      actually, i started using this approach few months ago and it took me from newbie to pupil and i am planning to be specialist. before doing this, i was jumping between different trainings and roadmaps that's why my rating was decreasing.

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

    AbduSaber ,this is not a good practice (as I think), because you may miss some good things and you delay your improvement to some extent.

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

still a specialist after solving 900-1000 problems.if that helps

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

Quality is better than quantity . Focus on learning more concepts you will eventually increase your rating.

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

Bro same case here I can feel your Pain

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

may be IQ related issue, you can improve yourself but will need more time and practice than others

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

back when i stuck in newbie/pupil, i did a lot of virtual participations and i think that kinda helps me reaching pupil/specialist. I feel like doing virtuals helps you to get used to be in contest situation with all the pressure about time etc. Because for me, solving problems in a relaxed situations is way different with pressured situations in contest.

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

First of all, I would like to advise the people who downvoted the post that if somebody is asking for some kind of advice from you, then it is ok if you don't give him/her any advice but I see no point in downvoting! Now coming to the topic, actually, I saw your account, you registered 4 years ago but participated only in 27 contests, which is not actually enough, if you used to give contests at regular intervals you would have seen some change in your profile color, I am commenting from an account where I am unrated because I don't want to get a negative contribution.... .. You are not actually aware that 2 questions per day would have been enough if you regularly used to code!

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

    Thanks for the suggestion .And you are absolutely right that i registered 4 years ago but ,my actual CP journey started last year from Sept-Oct onwards, but i stopped because of the university exams and research projects that piled up. This year when i started from june , I think i wont find such obstacles in the journey, so will definitely work upon the contest participation and upsolving thing. Thanks.

»
2 months ago, # |
  Vote: I like it +1 Vote: I do not like it

just do problem C more.if u feel ur stuck see editorial.if u cant implement then copy others code.dont be scared of cheating when practicing.its like when ur still a kid and someone ask u high school maths.u cant do it now,but if u copy and learn something from others,then u will be able to solve.just be patient

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

Haa HAA !! Poor Newbie !

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

Hello Aditya_99, last year, I had been stuck in a similar position for quite some time, and I'd like to share how I overcame it.

I could also solve problems, but it took me time to crack them, and that was my hindrance to rating growth. You see, I could solve A, B. But I would complete A after 30 minutes, complete B after 1 hour+. So how was I to even face C with <60 minutes? I needed to be faster.

Oddly enough, when I inspected your contest history, you are pretty slow as well, sorry to say that. In your last contest, it took you ~50 minutes to solve problem A. And you need to find a way around that. Getting ~200 points from A and wasting half of the time will not see you off to green. You need to target 470/480+ points from a div.2A. That way, you can also spare more time for your B/C.

So, how do you do that? Pay close attention. No +300, no +200, no +100. You go for the easiest problems. Difficulty 800. And you start solving them, storming through them, until you can solve a 800 problem within 5/6 minutes.

You would like to watch my solve graph. I was stuck. Then I started storming through the 800s. At times 20/30 problems in a night. First it would take me ~20 minutes to solve A. But now I can solve most of them within 5/6 minutes. And that's how I started to grow. Same goes for B. Solving B is not enough my friend; solving B inside 25/30 minutes will be enough.

Last but not the least, +300 will not work, if you cannot bang a div.2A fast enough, div.2As are barely 800/900 rated. Your rating +300 is a div.2B, and you are slow at div.2A, let alone later problems. Don't just solve. Solve fast enough. I wish you quick rating growth and if you need further help and think I can be of any help, you can DM me, thanks.

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

    Ya, thanks for the advice .And about the last contest, actually I started out 40 minutes late in that contest .

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

      That can happen. But in your 2nd last you couldn't solve A, in 3rd last it took you 60 minutes to solve A So the point is clear, you need to be faster solving the easiest problems.

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

      I started out 40 minutes late in that contest

      If you really care about your rating and want to graduate from newbie, then it was obviously much better to skip that contest and try virtual participation later.

      On a related note, even if you start on time, but problem A takes way too long to solve, then you also have an option not to submit your solution at all and bail out of the contest. The contest will be unrated for you and you will not lose any rating points. This is perfectly fine and doesn't break any rules.

      Though the "bail out" strategy only works for problem A. For example, intentionally delaying submission (or a decision to bail out) until solving problems A+B+C will decay a lot of points and this is a major disadvantage. Not to mention that there is a real risk to get a WA or TLE verdict for one or more of these problems.

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

    Sorry I can't write in my main account.

    Sometimes when I participate in a virtual contest(Div2), I can solve 3 or even 4 problems. But why do I hardly solve C in Div2 contests when I participate on time? And one time, I participated in a Div3 contest, I only got two problems (in 12 minutes) but cannot solve more, but when I participate in a virtual Div3 contest, I usually solve 4 to 6 problems?

    If you really want to know my real account,
    • »
      »
      »
      2 months ago, # ^ |
        Vote: I like it +1 Vote: I do not like it

      That is interesting. But given that you can solve in virtuals, I doubt this may well be a psychological issue.

      Do you check standings regularly in a real-time contest? Does falling back and the fear of rating loss affect you? Do you think too much of ratings and aftermaths while participating real time?

      I would suggest you try and find out what's the difference in your mindset in the above mentioned different scenarios. Then again, you came to a conclusion after participating in only 7 contests. That's too early for any hypothesis I fear. Let's try out some more real time contests, keep our nerves strong, if needed let's not check rankings during contests. I hope you can point out the problem soon enough

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

    how to solve div2 a consistenly.sometimes i solve in 20 seconds some stuck.i rlly wonder how to rank up.if u want my main i can pm u on cf.

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

      Hello nrg_aceu, I would recommend you to create mashup contests with problem difficulty [800, 1000] and try to solve them fast. Say, as an example, you can create a mashup of 5 800-rated problems, set the duration to 1 hour, and challenge yourself to solve these 5 easy problems inside an hour. See? That can be pretty fun! That is a way I use for practice.

      Also, here are some blogs you might find useful:

      A way to practice competitive programming (I strongly recommend this one)

      An awesome list for competitive programming

      Radewoosh's opinion on how to practice competitive programming

      How not to read problem statements by Um_nik

      Lastly this one is a blog almost similar to the one we are commenting on. I would suggest you to go through its comment section. Happy Coding.

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

        thanks for the advice.but i wonder if it really helps.my target is to solve problem C in any contest.i never solved 3 problems before even on div 3.with you giving the range of practice 800-1000 will it helps? also if u have another idea to practice for problem C it will be very helpful.i usually cant see the pattern or some idea behind the problem in order to make it simpler.thats why i always fail problem C

»
2 months ago, # |
  Vote: I like it +1 Vote: I do not like it

I think u should solve problem >2500 to improve skill ,and when solving a problem ,u should spend at least 1 hour thinking before reading solution

  • »
    »
    2 months ago, # ^ |
    Rev. 2   Vote: I like it +14 Vote: I do not like it

    agree. but tell me one thing. why not 3000? 2500 is too easy even for newbie...

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

      Really ?,sorry for my stupid ,as a newbie(i have just learnt cp for a month) ,i think 3k problem is pretty hard for me.

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

        LMAO! Why do you still want the newbie tittle when your currently a specialist and obviously a CM with a new account ?

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

try to write virtual contests every day

»
2 months ago, # |
  Vote: I like it +1 Vote: I do not like it

Can you suggest me some good practising strategy for improvement? nathan__drake

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

    Hey, you're not doing bad, but yes since you've already solved ~220 problems, most of which were A/B level, you now need to learn new concepts and start solving C/D level problems in practice. Try starting with graphs/trees, dp.

    Happy upsolving!

    • »
      »
      »
      7 weeks ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Although i have solved ~100 B problems still i'm unable most of the time to solve B during contest. Like i get stuck on B and able to solve it after contest. what should i do?

      • »
        »
        »
        »
        7 weeks ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        I don't have an answer to that. You must try different things and see what works for you. What sometimes works for me is that solving tougher problems helps me solve easier ones too.

        But you need to do try different things. Maybe see what topics you're week in and practice them with increasing difficulty. Experiment!

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

it cost me about 2 year and about 700 problems to get green. You can practice with contests to meet more problem. And how problem you solved isn't as important as how hard problem you solved. Moreover, I think Competitive programming is a tool you develop yourself. Don't notice your ranking too much, it should be motivation, but don't force your self. Good luck in the next contests.

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

Same here i solved 500 problems on codechef stilla 3 star coder on codechef. while i see many persons solved just 100-200 problmes but are 5-6 star coder.

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

I have not much experience but, what I think is that just solve 50 problems rated 1400 and give more contests and you are good to go.

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

lol no masters in the thread.

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

    Why do you need masters in the thread? :)

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

    It would be kind of hard for people that didn’t really struggled at newbie to give a accurate advice

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

for becoming pupil you need to solve div2A in less than 10 minutes and div2B in less than 30 minutes.

»
7 weeks ago, # |
  Vote: I like it 0 Vote: I do not like it

I usually do virtual participation, and perhaps you could try this out as well. When you virtually compete with the other participants, I think it is better to find out where we do not do so well.

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

It does not matter, if you have solved 400-500 problems then that just tells us that you are a good programmer. Good Luck.