Ahad's blog

By Ahad, 17 hours ago, In English

Hello Codeforces community,

I've been doing competitive programming for almost four years now, starting in May 2022. Before that, I had no prior experience with programming. Despite that, my progress has been steady:

  • Reached Pupil after 8-9 months
  • Reached Specialist in August 2023
  • Reached Expert in February 2024

Now it's February 2025, and despite practicing regularly, I haven't been able to stabilize in Expert. Sometimes I gain rating, sometimes I lose it, but overall, I feel stuck.

I know consistency is key, and I’m putting in the effort. But recently, I'm feeling confused about my practice approach. Am I solving the right problems? Am I missing something important?

Here's what my current training looks like:

  • I solve problems from past Codeforces contests, mostly Div. 2 B/C/D and sometimes harder problems.
  • I try to upsolve problems that I couldn’t solve during contests.
  • I participate in most rated contests and also do Gym contests sometimes.
  • Sometimes, I practice problems from diiferent platforms like LightOJ, CSES.

Despite all this, I don’t feel like I’m improving significantly. Sometimes, I solve a problem and feel like I just memorized a trick rather than truly learning something new.

I’d love to hear your thoughts and advice! Looking forward to learning from your experiences.

Thanks in advance!

  • Vote: I like it
  • +9
  • Vote: I do not like it

»
17 hours ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

oops I think I was wrong.

»
17 hours ago, # |
  Vote: I like it 0 Vote: I do not like it

Identify what are you struggling with most and practice that aspect.

»
15 hours ago, # |
  Vote: I like it 0 Vote: I do not like it

Maybe you need solve problems within some "timelimit". Just like solve div2-C within 30 mins when practice. If the problem you have solved are mostly solved by your own, I suppose that it is easy to reach blue and keep it. If you feel hard to solve div2-C in the Codeforces Rounds, I recommand you practice problems between 1500 and 1800.

»
13 hours ago, # |
  Vote: I like it 0 Vote: I do not like it

Just start solving 3000+ rated problems. After a dozen of them you'll easily reach a master.

»
7 hours ago, # |
  Vote: I like it +5 Vote: I do not like it

An overlooked part to stay in the middle of expert is speed. There are many experts, and typically, there is an expert or lower problem, and then the next problem is a master level problem. This means many people will have solved the same amount of problems. The tiebreaker is determined by speed. Speed is what carried me to where I am so far. Speed doesn't just mean typing fast. Coming up with the idea fast is a very important step. This comes with practice. You should do virtual contests and emphasize speed, or even just time yourself. Another method I tend to use is "duel" someone, which is racing someone to solve a problem. This increases speed. I hope this helps!

»
7 hours ago, # |
  Vote: I like it 0 Vote: I do not like it

solve 3500 rated problems bro

Strictly demand yourself, and you will also reach the pinnacle like me.