Hi everyone,
I am new to Codeforces and have never studied Data Structures & Algorithms (DSA) or Competitive Programming (CP) before. I would appreciate some guidance from experienced programmers.
My Questions
1. Problem Selection and Rating Progression
I currently solve problems from the Codeforces problemset within a range of my current rating ±100. Is this a good approach?
If it is, how do I know when I should move on to the next rating level?
- Should I move up after solving around 50–60 problems at a particular rating?
- Or should I continue solving problems at that rating until I feel completely comfortable with them?
The reason I ask is that even after solving more than 80 problems, I still get stuck on some problems, although I can solve many others at the same rating. What should I do in this situation?
2. Using Other Platforms or Problem Sheets
Do I need to practice on other platforms or use problem sheets (such as A2OJ, CSES, USACO Guide, etc.)?
- If yes, when should I start using them?
- How are they helpful compared to solving problems directly from the Codeforces problemset?
Thank you for your help and advice!
-----------------------------------Please Who Ever Read This If You Know Please Reply--------------------------








Actually that's my answer on another same question, but it definately is about you too. Talking about second question: I practiced only on cf. Do not forget about button "GYMS" — there are many cool practice challanges. And theory I was watching youtube, but about theory I said lower in text.
1) Bro, as I see you are solving mostly low rating problems. That doesn't improve your skill. For example you can solve 1000 problems with rating 800, but you won't be possible to solve even 1200. So, the point is trying to solve not 5 800's per day. Try to solve 1 task, that would really buff you. For example, I had task, that I upsolved for 3 days, but it improved me very very much.
2) Try to learn theory. I don't know how about guides on it in india, but in russia you can: 1) Find some youtube lessons on some usefull algorithms (for example "young&&yandex" channel (parallels "C","B'","B") foor the firs time it surely enougth). 2) Find for some websites with it. 3) At least use an AI, why not. Try using it to explain you algorithms, so you would clearly understand them. BUT! do not learn all algorithms in world, most of them are so rare-used, that you would spend many time on something you woldn't even meet in real contests. And again you at least can ask AI for the most needed algorithms to start. So, for now, learn basic algorithms, you would always use. Try to make it good quality and fast-writable in real contests.
3) You just have to love CP and try to improve every day. Not just solving many easy tasks without some "cool ideas". Just solve 1 task that make your brain working hard. Also: watch for others code, read editorials, but it is things that anybody say to you. Personally I reccomend you to watch some Shayan videos on youtube: LINK that are year or more old. Actually, there would be answers on your questions He even has video called "from newbie to expert in 3 months".
Good luck and high rating!
Thanks Brother that really helpful I should definitely try it . As you suggested i try to do better rating problem .