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

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

I tried solving problems from Kattis Online Judge and Online Judge (UVa) but I'm barely able to solve problem A and B in codeforces Div 2 round. I had high hopes that I would be able to get good this year but it is not working out. I've been doing CP for around 10 months. I'm not able to approach C and D problems at all. They use some crazy dp bitmasking logic which goes over my head. Rant over

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

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

One day sun will rise, keep practicing :)

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

    how do you confirm this assumation? i see alot of people who stay newbies for a couple of years then they vanish

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

      their sun never rose because they were too afraid to face the storm

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

        wow this hit different (not kidding) i don't know what about the post writer but maybe you are right, most newbies (including me) don't try hard stuff they only solve what make them comfortable, but i don't think this applies to every newbie some people know cool algorithms and solve tons of hard problem but they don't even reach pupil but yeah maybe cp isn't for all people

        • »
          »
          »
          »
          »
          3 года назад, # ^ |
            Проголосовать: нравится +5 Проголосовать: не нравится
          • lol i just assumed that the post writer is a newbie and this is his problem maybe he is expert and cant make it to CM, how dumb i am
»
3 года назад, # |
  Проголосовать: нравится +34 Проголосовать: не нравится

Learn DFS and boom, you are 1600!!

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

Can you share your practice profile?

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

I wasn't able to understand a ton of topics (including bitmasking) for the first 2ish years I did cp; I only ended up learning it after I became a master. Don't stress too much about learning certain topics, things like bitmasking will only show up on a small subset of problems anyways. Most codeforces problems from A-D can be tackled with raw ad hoc intuition.

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

    did you practice only on codeforces and how long have you been doing cp? I think I'm randomly solving from various online judges which isn't helping. Sticking to a particular regimen might help.

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

      I've been doing cp for like 3 years now. I practiced mostly off codeforces/usaco/atcoder. Never really focused on particular topics except rarely (always found it too boring lol). Just did practice problems.

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

i may look like a troll account,but im going to share you 1 valueable advice that not even lgm can give.

always think that everything is easy.

now you may ask,"how can i think everything is easy when i am not even able to solve problems?".theres one thing i want to tell u,if you cant solve a problem,then you are doing good,else youre just wasting your time.

the reason why i say this is because i experienced that,and ive broke it.think like this,you are given 2 hours to solve 6 problems.the logic is that it is possible to solve all problems.and if u cant,then u lack knowledge,not intelligence.lets take an example,0-1 knapsack.it was probably 200 years ago when it was first made.so its around 1800.it took human civilization 1800 years and millions more in order to make a 0-1 knapsack algorithm and ur suppose to do it in 2 hours(not mentioning the problems are varied lol).so how to wrap million years of civilization into 2 hours? cheat from others.see what others have found and apply.i think reading what others have made is cheating lol.like if ur truly smart implement binary search without realizing its binary search or make ur own programming language.the thing is that this feat is impossible unless u have years.so dont expect yourself to answer some problem if u dont even know the right track on how to approach it.just practice.if u feel like the problem is too hard,dont bother doing it.see the editorial immediately cuz itll help you learn things faster.take notes.remember.then pray for the next contest so it has similar problems.dont listen to youtubers as theyll just say practice(cringe lmao).

so yea the conclusion is,just have a positive mind and do problems.enjoy the process.

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

Don't worry, just do it for fun. If u don't find it interesting then you don't have to do it.

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

keep gaining experience by solving more and more problems, watching others solutions daily.

IF YOU ARE UNABLE TO GO BEYOND PROBLEM C , THEN REMIND YOURSELF "i'M NOT OLD/EXPERIENCED ENOUGH" and start gaining xp.

This is how I keep myself motivated. I started doing little serious cp 4month ago and solved 380 problems till now, and now div2 problem C looks do-able in contest to me. still im newbie

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

then get good at something else, maybe sports.

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

i have also been there once .my base form (without practice was around 1080), it took me 17 months of continuous cp and 1100 problems to get to 1715 max(not that worth it ,but yet not bad). stucked at newbie for 4 months stucked at pupil for 3 months at specialist 7-8 months and now an unstable expert

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

I was at this stage 6-7 years ago as well, when I was training for math Olympiads, and saw the people I was training for math Olympiads go through this stage about 5 years ago too, so getting hard stuck for a while is super common, don't sweat it. I'll mention a few ideas that helped them and me out (modified a bit for competitive programming).

If you're at this stage, I would recommend the following couple of things:

  • If you're out of ideas too soon, try keeping a track of ideas you use in problems. Try to solve problems that are just out of your comfort zone, struggle with them for 20-30 mins, and then read the editorials. Do the ideas you had for the problem match with the solution idea? If not, try to summarize that idea by a couple of words and write it down somewhere/remember it for later on. This is how you develop a repertoire of heuristics and ideas.

  • If you're struggling with math, just learn math. As obvious as this might sound, too many people complain about not being able to solve CF problems at all without realizing that math is their issue. I would recommend Concrete Mathematics (Knuth and Patashnik) and Problem Solving Strategies (Arthur Engel), in that order, to learn more math. I would also highly recommend looking through Polya's How To Solve It for a great resource on what kinds of things you should try while solving problems.

  • If you're struggling with algorithms, you have a couple of options. Either go to some resource like cp-algorithms, Competitive Programmer's Handbook (on CSES), Halim's Competitive Programming 3 or 4, and start doing it from starting to the end, solving problems along the way. Or you could solve problems and if you don't get a solution, read editorials. If it has a new algorithm, learn it from some of these resources and practice problems for that algorithm from these resources. I personally made mashups of problems rated 200-300 above my rating and tried solving them for practice. If you're grey then it makes sense to solve problems rated 500-600 above your rating since there's not really a big difference between easy problems.

  • If you feel like you're at a disadvantage while solving problems during a contest, you could have a look at this old comment of mine as well as other comments in there. For some more general advice, you can have a look at this as well.