Hello Codeforces Community,
I’ve been trying to improve my skills and move out of the newbie phase, but I feel stuck. I’ve attempted solving problems that are above my current level, but things often get too complicated, and I end up feeling like I’m back to square one.
Problems in the 1200-1600 range sometimes feel impossible for me, not because they’re too hard conceptually, but because they cover topics I’ve never encountered before. It’s frustrating to keep hitting this wall when all I want is to improve.
I’m not looking for generic advice like “keep practicing” or “just solve more problems.” I’ve been doing that, but it hasn’t been working. I want a clear strategy or actionable steps to break this cycle and start making real progress.
If anyone has been in this situation and managed to overcome it, I’d really appreciate your insights.
Thank you!
practice daily. Thats the only thing. if ur practicing but still not reaching green, then ur doing it wrong.
and practicing 50 days is really not enough
and please google before asking :)
A wise man once said
Go get touch some grass and you will be green
Then imma go touch some lava.
Then imma go touch some sky
Then imma go touch nutella
Then imma go touch alletun
then imma go touch tourist
First of all, practicing every day is necessary. Before completely focusing on practicing though, ensure you have the basic theory down. To ensure that, I recommend learning basic stuff from the competitive programmer's handbook like basics of graphs, searching and numerical methods, prefix sums, etc. Beyond that, it is simply a matter of being disciplined in the solving process -- do not spend time entertaining random ideas, but instead guide yourself forward through problems by asking questions like "what should I look for next?" or "is this conjecture true?". There isn't always a clear path forward, but just a whole bunch of experience fills in the gaps.
Be patient. When I was cyan (on another account), I decided to do 2000+ problems. At the beginning, I couldn't even solve any of them. After 11 months, I can now do them fairly well. You've only been grinding for ~4 months, so you can't just expect to improve right away. Keep practicing :)
hey, i was wondering how many problems it took for you to get comfortable with cyan range questions?
cho minh xin name discord voi ban oi
Pls help me too.Problem LINK
Or tell me where i m going wrong pls
Solve more problems and listen to twice!!!
To improve in competitive programming, focus on solving problems by concept, not just by difficulty. After struggling with a problem, read the solution to understand the approach, then try solving it again yourself. Join virtual contests to improve time management and learn from others in the community. Track your progress and stay patient—consistent practice and learning new techniques will help you improve over time.
Maybe your problem doesn't have anything to do with practicing and competitive programming. Are you eating a balanced and nutritious diet, do you exercise regularly, do you have an active social life, are you happy and fulfilled, do you get enough sleep...
If the answer to any of those questions is no, you know what to do.
Learn Binary search on the answer and two pointers from codeforces edu and a little bit precomputation ideas like prefix sums, prefix minimum, suffix minimum etc.., If you fail to prove your idea for a problem 100% correctly, consider that you have failed to solve the problem even if you get AC. In this way, Solve 50 greedy problems from 1100, 1300, and 1500 each. After doing this, attend a few div3 contests. You will become GREEN. Congratulations in advance.
The problems upto C in div 2 don't require any computer science knowledge. you just need to know the syntax for arrays, sets, maps, and the other STL containers. It's mostly a mental block, that when you started cp, you felt that C problem is hard, and you are not able to get over it. People overcomplicate the C problem, its usually something very simple. So i'd suggest just giving more contests and taking CP less seriously for some time.