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

Автор Marinush, история, 2 года назад, По-английски

I see a lot of newbies trying to get better at cp. But working hard isn't enough. You need to have a goal in mind and follow it till the end (like becoming X till Y). Here I am gonna give some tips on how to become master.

Participate in contests

For master you need rating. To get rating you have to participate in contests. Nothing more needed to be said.

Solve problems

To get a good place in a contest, you have to solve problems. So, obviously, try to solve as many problems as you can. You might say that me saying this is useless and idiotic, but I disagree! I see a lot of people that give up after solving a certain amount of problems, but don't be like those people. They will never achieve anything meaningful in life.

Have the correct mindset.

Competitive programming is just as much about programming as it is about having a good mindset. It's all about competing, so you have to be in the right state of mind. You might ask me what it is, but I can't tell you, since it's different for everyone. What works for me might not work for you and vice-versa. The main idea though is that you should be ready to dominate and destroy all relationships with your friends in order to beat them. There are no friends on the battlefield. Treat rating as the most important thing in the world and you will start getting more and more of it.

Move your body!

During a contest, you have to think and stay focused for a lot of time and it is very tiring to keep focus for such a long period. So, you should try to stand up and walk in your room for a while, go outside or even do gymnastics. What I usually do is I do $$$30$$$ push-ups every $$$30$$$ minutes. And after each AC, I go outside for $$$5$$$ minutes.

Love programming!

You have to love what you do and do what you love! Competitive programming isn't a job, you should enjoy it! If you don't enjoy it there is no point in doing it. I see a lot of people that do competitive programming to get job interviews, you should stop immediately! Only solve problems you find interesting, there is no need to torture yourself as life itself is hard enough, why make it worse?

Reflect on your progress in a journal.

Sometimes you might be down, because of a huge rating loss, for example how I lost 18 rating in Codeforces Round 778 (Div. 1 + Div. 2, based on Technocup 2022 Final Round). But, you shouldn't be sad. You made a lot of progress to get where you are! If you keep a journal of your progress it won't be only in your mind but will be out there in the world where you can't ever deny it. Reading it will make you feel way better as you will see how far you've come. It will also remind you of some algorithms you have learned along the way.

Start small

Solve an $$$800$$$ rating problem, if you can solve it without help then solve a $$$900$$$ rating one afterward. If you can solve it as well add $$$100$$$, else subtract 100. Repeat until you become Master.

Write every problem on paper.

After completing a problem, you should rewrite the code on paper. You might think that doing so is redundant, but the reason you are solving problems is to get better, don't forget. Writing something on paper takes time. That will help you to memorize and understand your solution better because you have more time to reflect on it. Sometimes I even start with writing the code on paper. This way I have to write the right code on first try.

Make friends.

It is important to have friends that keep you motivated. You should be inspired by them and try to destroy them in contests.

Grind.

Grinding is essential. You need to solve as many problems as you can, but don't lie to yourself, solving a harder problem is always better than solving a lot of easy problems. As a wise man once said, Quantity < Quality. I practice for around $$$10$$$ hours per day. I know it's not much, but I have school to attend and other responsibilities.

Relax.

You need to be rested. Practicing while tired is almost useless and competing is free rating loss and what idiot wants that? You need at least $$$8$$$ hours of sleep per night and don't forget to eat, as I do sometimes sadly...

Study Algorithms.

A lot of people say that algorithms on Codeforces are not that important nowadays, but I don't care! Algorithms are beautiful and you should study them! You should study, understand and appreciate them. Algorithms are like art and should be treated like it. I usually read algorithms when I relax as stated in the previous step.

Read books.

Reading improves your way of thinking. You relate to the characters of the given book and get inspiration from them. I often get my inspiration for solutions based on books I have read in the past. Lately, I have read Ion and used the greedy algorithm the protagonist used in the book and it was brilliant!

Learn minimum 3 DP optimizations.

DP optimizations make your mind think differently. They are essential to understanding the core of competitive programming and appreciating complex ideas. I recommend starting with Convex Hull Trick, as it is the easiest one. While you are at it, learn Li Chao Tree too, since it is pretty much the same thing but doesn't require the same monotonicity rules. Then go to something a little harder like Divide and Conquer and Alien's Trick. If you wanna get fancy, you may want to study Rudy's Trick (Rudy's trick is not a DP optimization but it is an interesting optimization worth noting). But it isn't very common.

Progress is impossible without change, and those who cannot change their minds cannot change anything

Marinush

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

»
2 года назад, # |
  Проголосовать: нравится -30 Проголосовать: не нравится

Thank you all so much for upvotes and support! I wish you all good health, love, high esteem and respect from loved ones, achieving your dreams to infinity, happy life, have magical moments and memories, and obtain what you really want, because that is the only way to fulfillment, realization and happiness! May god bless you and your loved ones! Amen.

»
2 года назад, # |
  Проголосовать: нравится +16 Проголосовать: не нравится

Wonderful blog but the gymnastic and the pushups, Huh? 0rz

  • »
    »
    2 года назад, # ^ |
      Проголосовать: нравится -6 Проголосовать: не нравится

    Yes, i think working out is just as important as practicing! Healthy body = Healthy mind ready to take on some hard problems.

    • »
      »
      »
      2 года назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      I agree. I get back pain and headaches if I don't take breaks in between and continue sitting for long hours. Also, productivity goes down in this case.

  • »
    »
    2 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    A sound soul dwells within a sound mind and a sound body.

»
2 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

ty, I will try

»
2 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

How old are you? Your profile picture is a small boy's picture.

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

What is Rudy's trick?

»
2 года назад, # |
  Проголосовать: нравится +17 Проголосовать: не нравится

30 pushups every 30 minutes lol!! I can't even do 15 pushups a day

»
2 года назад, # |
Rev. 2   Проголосовать: нравится +24 Проголосовать: не нравится

I love how you go from some motivational/somewhat generic stuff for the majority of the blog to DP optimizations lmao. As someone who can solve Div2E on a semi-regular basis, you do not really need DP optimizations, that's required for some Div 1D/E problems normally and if you can solve them, welp, you are already like GM level. While we are at DP optimizations, could you elaborate on Rudy's trick? I never heard of it and a quick google search isn't doing me any good thanks.

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

    Actually, Rudy's trick is not a dynamic programming optimization. I just added it as a bonus because I didn't have anywhere else to place it, but I find it a great and very useful technique. But, it is used to solve this problem.

    The idea is that
  • »
    »
    2 года назад, # ^ |
      Проголосовать: нравится +6 Проголосовать: не нравится

    Rudy's trick is pretty well known in China. It's an optimization technique to increase the number of states that you can visit within a short duration.

    example usage

    I would like to thank AHMADUL for teaching me this trick.

  • »
    »
    2 года назад, # ^ |
    Rev. 2   Проголосовать: нравится +11 Проголосовать: не нравится

    Another example problem on this trick :- https://tlx.toki.id/problems/troc-15/E/

»
2 года назад, # |
  Проголосовать: нравится +76 Проголосовать: не нравится

Shit, I am one dp optimization behind

»
2 года назад, # |
  Проголосовать: нравится +88 Проголосовать: не нравится

"Sometimes you might be down, because of a huge rating loss, for example how I lost 18 rating" you kidding me?

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

You just said not to do competitive programming for the Job interviews and suggested to do only problems that we find interesting also advised not to torcher ourselves for that. So why should we do competitive programming, if it is not for job interviews or to get a good job? I just don't get it. I know CP is fun and I love it too. But doing it without the intention of getting a job and practicing it for 10 hours per day (as you just said) for what?

Please correct me if I misunderstood your statement.

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

    Well, you should see people who grind League of Legends (LoL) for hours to hit diamond although it doesn't benefit them IRL.

    In my mind, those two feelings aren't really different. The only difference is I am hard stuck in silver in LoL and have eye problems so I can't grind league anymore.

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

    Agreed with above. if you are solving problems mainly for interviews, grind Leetcode instead of Codeforces, which has a much more standard and relevant set of problems. Codeforces is pretty adhoc and mostly for competition training/fun.

»
2 года назад, # |
  Проголосовать: нравится +33 Проголосовать: не нравится

Buy yourself a slave.

»
2 года назад, # |
  Проголосовать: нравится +61 Проголосовать: не нравится

After every few lines, I get a feeling that the blog is satirical. But then a lot of things do make sense. Is it satire or not, lol?

»
2 года назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится

"I practice for around 10 hours per day. I know it's not much, but I have school to attend and other responsibilities". OMG

»
2 года назад, # |
  Проголосовать: нравится +52 Проголосовать: не нравится

Thank you sir for creating an alt account to then act condenscending. actually no, fuck you

»
2 года назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Nice blog! just have one query. My rating is around specialist! My final goal is CM. If I keep doing problems rated 1600-1700 for the next 2-3 weeks, I know it will help me to get out of my comfort zone but sometimes in contests, I have a hard time solving 1300 rated problems(50% of the time because of misreading) which make me feel like I should not be solving +400 Rated problem at least now. What is the right thing to do in this situation?

  • »
    »
    2 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    You will solve 1300 tasks faster if you participate in contests. So forget and solve 1600-1700

»
2 года назад, # |
  Проголосовать: нравится +44 Проголосовать: не нравится

I doubt whether you are a genius or someone's alt

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

what happend to your rating?

  • »
    »
    2 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    It went up.

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

      If you practice 10 hours a day, why have you solved only 68 problems? Proves that you're an alt

      • »
        »
        »
        »
        2 года назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        maybe he uses some other platforms

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

          Even if he uses other platforms, it's not possible to become a Master just by solving 68 problems on CodeForces. You have to at least solve a minimum number of problems and participate in a number of contests to recognize the pattern of problems on CodeForces. And a 12-year-old who just participated in 13 contests and solved 68 problems became a Master? Not possible. He surely has another account and the chance of him being a 12-year-old is pretty low.

          • »
            »
            »
            »
            »
            »
            2 года назад, # ^ |
              Проголосовать: нравится -14 Проголосовать: не нравится

            Average newbie telling master he couldn't have become master. Thank you for BRUH09273.

            Marinush

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

              I never said that you couldn't become a Master, but that you're using a fake identity. Do you have any proof that you're the person in your profile picture?

              • »
                »
                »
                »
                »
                »
                »
                »
                2 года назад, # ^ |
                  Проголосовать: нравится -8 Проголосовать: не нравится

                Do you have any proof that you're the person in your profile picture?

                Marinush

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

                  Of course I'm an alt account and I'm not the person in my profile. But the person we're talking about here is you, not me. So you have to give proof

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

                  Here you go dipshit:

                  Marinush

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

                  How come you have a "buletin" if you are twelve, where in Romania and Moldova you need to be at least fourteen to get one? I smell some bullshit

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

                  That totally looks like an edited photo. The fonts don't match and the picture clearly looks like its edited and you show that you have edited it by putting (aster) after M under your gender

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

                  Nah bro Im from Moldova, its totally legit. Mine looks like this too.

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  2 года назад, # ^ |
                  Rev. 2   Проголосовать: нравится -8 Проголосовать: не нравится

                  I identify as Master.

                  Marinush

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  2 года назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится

                  I'm sold, can you make me a Botswana passport please?

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  2 года назад, # ^ |
                    Проголосовать: нравится -8 Проголосовать: не нравится

                  Sorry, I don’t forge documents. It is a very serious crime.

                  Marinush

»
2 года назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

Can you please make a post on how to un-become a master?