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
One day sun will rise, keep practicing :)
how do you confirm this assumation? i see alot of people who stay newbies for a couple of years then they vanish
their sun never rose because they were too afraid to face the storm
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
Learn DFS and boom, you are 1600!!
Can you share your practice profile?
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.
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.
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.
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.
Don't worry, just do it for fun. If u don't find it interesting then you don't have to do it.
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
U r still newbie bro bcoz of some cheaters :(
then get good at something else, maybe sports.
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
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.