Hello Codeforces community,
I've been working hard to reach the Specialist rank, but I feel like I'm hitting a wall. I've put in quite a bit of effort practicing problems and studying algorithms, yet progress is slow. So, I thought I'd reach out to all of you for advice!
Here’s a bit about what I’ve been doing so far:
- Practicing Basics: I’ve been solving a mix of 1400 and 1500 rating problems to strengthen my understanding of basic algorithms and data structures.
- Focused Practice: I’m trying to work on specific areas like sorting, binary search, and dynamic programming, but sometimes it’s hard to know which topics to prioritize.
- Time Pressure: In contests, I struggle to solve problems fast enough to get a good rating boost. Questions for You
- How did you break through to the Specialist rank? Was there a specific approach, topic, or routine that helped?
- Any tips for improving speed and accuracy under contest conditions?
- Are there particular topics you found crucial at this stage? I don’t want to waste time on areas that won’t help me grow as much. Thank you in advance for any insights or advice you might have. Looking forward to learning from all of your experiences!
Happy coding!
Auto comment: topic has been translated by Isamatdin (original revision, translated revision, compare)
I Have seen your Progress and this works only for u since u already have enough Knowledge
then u are specialist u don't need any additional thing
Thanks!
I think that you should practice on leetcode.com. 2000 rating there = specialist on cf.
how do u know if it's 2000 rating or below or higher on lc
$$$LC = CF + 600$$$
i mean when u open lc there's no rating system for problems like here. just easy med hard
lc problem rating
LC = CF + 400 (I'm 1660 on leetcode and 1250 on codeforces).
I'm 2200 on leetcode, 1600 on cf
that's bs, when i was 1650 on CF I was 1730 on LC.
Are leetcode problems really that good?
Yes, but they're not as entertaining as cf problems I think. And like once you get to like $$$2000-2100$$$ or so on lc, it is better to start doing cf primarily.
OK, thank you.
btw why not atcoder abc
idrk about atcoder, sorry.
but leetcode problems are different.
Problems on leetcode are more classical and require more DSA. It helps us to properly use data structures and algorithms.
Agree 100%. Also use time on LC to find a template for each pattern that you understand and prefer that you can implement quickly without thinking about it. Especially for binary search, dfs, bfs. Give LC contests till you get bored and when you come back to CF it will be easy to become specialist. Also be good at understanding general reasoning like exchange argument etc. from editorials.
Impressive practice progress, I'm also stuck very hard and can't reach specialist but I think the most reliable way is "over-level" to reach there.
That is, if the coding strength level is at expert then we will reach specialist in shorter time. Which require more intensive level grinding like RPG games...
practice 1300-1400-1500 questions with different topics
i can't reach specialist too, but i think i am not solving enough problems. What topics should i learn and solve? I cant solve constructives. Should i learn it?
You should learn "Two pointers")
never used this in my entire life. well i used once for classic two pointers. still, where can i find problems to practice two pointers
use this tag combination:
Codeforces edu section
I'm not able to solve C consistently in Div. 2, that's why I'm not able to reach Specialist. Hell, I'm not even able to reach 1300.
Gosh, you have solved lots of problems!!!
Well, I haven't solved most of them on my own. That's why I'm still a pupil.
Believe me, you will very soon be specialist. You might not have solved all of them on your own but the fact that you have seen so many problems and recognise patterns very well will soon give you an edge.
i disagree, thats not why youre pupil. youre pupil because when you cant solve a problem and read editorial, you dont actually learn anything from that and you just copy paste the answer. when i practice i mostly end up just reading the editorial for problems, and i solve problems completely on my own probably less than 40% of the time, and i still managed to reach expert. try actually understanding why you didnt come up with a solution, and improve from there
Yes, you're right. I'll follow your advice.
Nice progress. Do you use any other judges ?
Damn I'm kinda in a similar position like you : (
I think CSES problems help quite a lot for learning, especially the Sorting & Searching section and DP section. There's a corresponding book which goes along with it, which is helpful as well. I would recommend usaco.guide if you're trying to learn a specific topic, since it compiles lots of resources and has related practice problems. If your issue is mostly math, then try using AoPS's Alcumus tool and set it to high difficulty.
As for speed and accuracy, this was my biggest issue for a while. Make sure your editor has proper syntax highlighting and error checking, and also be sure to use g++ flags to catch stuff like invalid memory access or bad type conversions. I use these compilation flags:
You don't need to do too much preemptive topic-based learning at this stage, since most of it is practice and pattern-recognition. Each time you can't solve a problem in a contest, read the editorial afterwards and try to figure out what changes to your thought process could have led you to the right solution. If the problem uses a technique you're not familiar with, then this is the right time to learn it.
Best of luck!
damn! Why u giving advice on reaching specialist when u urself never reached there... XD
Never used all those flags. Thanks! Didn't expected to learn something new here.
You are working in right direction . Just try to solve some 1500 rated problems [around 50 — 60] you will we specialist soon. For Topics -> Binary Search , Greedy , Constructive , Bit manipulation
Its easy to reach specialist if you go via the div4 route these days. Back in my days (3 years ago lol) it was a rollercoaster ride (quite evident from my graph). However I didnt really have a target of reaching a particular rating or level, I just did CP for fun until it was no more fun (and now I feel its fun again) eventually until I reached specialist. So the good advice would be to focus on having fun solving problems. On other hand here is the kind of advice you are looking for.