Скоро Codeforces Round 1133 (Div. 1, Div. 2)! Регистрация здесь. ×

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

Автор Bibhuti, история, 9 лет назад, По-английски

I am a mediocre coder as of now. I want to improve fast but am confused about how to go for upsolving. Once upon a time I thought of solving 5 problems per day by sorting the problemset from most solved to least solved and go with the flow but now I feel like I am only doing naive questions which only make me feel good but no improvement at all. I've done nearly 420 questions but still feeling damn dissatisfied.

I really don't have any instructor or coach here to give some particular guidance to how to solve something or how not to solve something. So please someone, anyone help me out.

One more thing is that when I go for solving hard questions and just go for solving Div 2 C or so, it scares the hell out of me. I feel like I don't know anything & maybe I'm jumping straight away to something without any previous knowledge of it. I hope many coders would have gone the same phase just like me.

I just want to interact with anyone willing to help just for once and clear my doubts. Please help me.

I think my strength is I've dedication and hard work and I hope the weakness in me is I'm really not confident about what I am doing is right or not.

I would be highly generous if anyone really helps me out.

UPD 1:

I saw many guys giving down-votes to my blog. Can anyone explain why ? I would really like to know.

It's too bad that some people really don't understand serious problems of others. I agree that there are so many resources available over internet but the tough part is selecting the suitable resource among all of them, which is quite a tedious job without an instructor and I don't have one.

Thanks ania for your suggestion. I really got some ideas about how to proceed after your suggestion. It was fruitful

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

»
9 лет назад, скрыть # |
 
Проголосовать: нравится +37 Проголосовать: не нравится

I didn't use those myself but I have read here many times that a2oj ladders are a good way for training. They are designed as a set of 100 problems that coders from certain rating range solved before increasing their rating.

»
9 лет назад, скрыть # |
 
Проголосовать: нравится +21 Проголосовать: не нравится

Also, I just want to tell you to have confidence in solving any problem regardless of how hard you think it is. In fact, I struggle with this issue too, but I am still trying my best to ignore mental barriers and just 'think' about it. One good trick is to remember that some div2c problems are actually just as easy as one div2b problems — there is a big variation from contest to contest. So each time you try a div2c (I would suggest that you only train on div2c or d from now) just convince yourself it is just as easy as a div2b (because in fact, sometimes it is the same difficulty).

  • »
    »
    9 лет назад, скрыть # ^ |
     
    Проголосовать: нравится +5 Проголосовать: не нравится

    I have a doubt. When I'm unable to solve a problem, I go for the editorials and if I still am unable to solve it then I go for looking the solutions of others. Is it OK during training or there is some other way ?

    • »
      »
      »
      9 лет назад, скрыть # ^ |
       
      Проголосовать: нравится +16 Проголосовать: не нравится

      Of course it is okay. If you don't read editorial, you will never learn new things.

      What is not okay is giving up too easily. It is good to develop a feeling of regret when you spoil a nice solution. Then, you will not be so easily convinced to read editorial next time. Spend a solid amount of time on a problem before giving up. If you can't understand editorial, try to read others' comments. This is all okay, as long as you don't give up easily.

      Good luck :)

      • »
        »
        »
        »
        9 лет назад, скрыть # ^ |
         
        Проголосовать: нравится +15 Проголосовать: не нравится

        I've exactly felt many a times the same. After going through the editorials and seeing others solution I feel like I could have cracked it if I could have given it a little bit of time. It's really cool to see that it's quite natural to feel regret.

        Thanks for this extremely helpful advice :)

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

Very helpful post for coders like me thanks a lot

»
9 лет назад, скрыть # |
← Rev. 2  
Проголосовать: нравится 0 Проголосовать: не нравится

I think it's better first learn a topic for example DSU then try to solve some DSU problems. anyway i'm not wise at all so ask other people that this is good way to improve or no.

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

and be patient if you want to improve

»
9 лет назад, скрыть # |
 
Проголосовать: нравится +13 Проголосовать: не нравится

I have a doubt, hope someone helps me out. How much time should I think about the problem before going for the editorials? Also, some situations:
1) What should I do if I don't even understand the editorials or other's solutions?(Asking for clarification as a blog post often leads to downvotes+no comments)
2) What if I have coded up my solution but I am getting WA on test 76(A big case) that differs only by a small amount but don't understand what's wrong with my solution?(Again, asking for help as a blog post leads to downvotes+no comments)

  • »
    »
    9 лет назад, скрыть # ^ |
     
    Проголосовать: нравится +17 Проголосовать: не нравится

    I'd recommend trying for at least a day before looking for a solution. You should make sure you tried hard for some time but also that you had some mindless time when the question was just floating around in your head (e.g. when falling asleep or when on a bus). If the editorial is written as a set of hints, try reading the first one and giving yourself some more time again.

    If you don't understand the editorial then it's possible that the question is just too hard for your current level. In that case just return to this question in a month or a year. It is also possible that there is some required knowledge you don't have. You can try to read about the needed technique immediately but I'd recommend putting it on a list of things to learn and once you learn it, return to the question. If at this point you still think that you should understand this problem, make a blog post.

    If you are getting WA then it's either some overflow or you should be able to find a smaller case that is WA too. Write a testcase generator and either a brute force solution or answer checker. Run them in a loop until you find a failing testcase. Then you have something to work on. If you still have problems, make a blog post.

    When you write a blog post, make sure that it's not "plz help I'm stuck". Include the link to the statement, explain what's your problem and what you tried to do. And please, don't paste your code in the blog body. Give a link to the code. It's also useful if you explain what you actually do in the code. If people see that you made effort and did all you could, they are more likely to help.