Hello,

I spend almost 11 months training in codeforces and I didn't know any thing about problem solving before this time , and I have solved almost 270 problems but still gray coder , I think there is a problem in the way of my training ,

I need to tell me the techniques/Algorithms and the shortest path to be blue coder(in your opinion);

Thank you

I think if you read some topic just solve problems about it many and many

I think you should buy an "Introduction to Algorithms" book and read it. Right before reaching blue, I learned DFS/ BFS, solved some classical DP problems (80% of the time I could not solve a DP problem by myself when I was cyan), knew Dijkstra's Algorithm and Kruskal's Algorithm, and mastered C++ STL. You also need to solve the first three problems as fast as you can.

what book about algorithms did you read before reaching blue?

I read "Giai thuat va lap trinh" and "Tai lieu giao khoa chuyen Tin". These books are in Vietnamese, so unfortunately, I cannot recommend these books here.

I think I can recommend the Competitive Programmer's Handbook by Antti Laaksonen (https://cses.fi/book/book.pdf ). I think the content of this book is suitable for beginners.

I also know some programmers who reach the level of expert on Codeforces after reading some chapters of Algorithm Design by Jon Kleinberg and Éva Tardos. If you just want to be good at Competitive Programming, I think you should focus on Chapter 2, 4, 5, 6, and 7 in this book. (Note: The book is pretty expensive).

Competitive Programming 3 by Steven Halim is also an interesting book, but in my opinion, it might not be suitable for complete beginners. I think you should read this book after finishing at least one algorithm book.

thanks

Where did you learn DFS/ BFS

To get blue you generally just need good implementation skills and very basic algorithm/data structures. Being able to solve A-C quickly should get you blue.

Here some tips i try to follow: - Don't look at the solution until you have no leads, and even then take a break and come back to the problem later to see if you can find a new lead. - Upsolve - Don't search by topic unless it is something completely new (figuring out what techinques to solve a problem is sometimes the most important part) - Don't overreach, that is dont try to solve problems that are too far above your level - If you solved a problem you found difficult, take a quick break then come back to the problem and see how you could have solved it faster

All this being said, if you are stuck at gray it is probably your implementation skills, and id recommend the atcoder beginner contests for improving those.

Id recommend E869120's pathway, its much more detailed and also lists needed data structures:

https://codeforces.com/blog/entry/66909

You can't expect to cross 1600 rating by solving just 5 — 7 problems of rating >= 1600 in 11 months. Solve atleast 100 — 200 problems of R1500/R1600 then you might expect some significant results.

Interesting, this tool seems helpful, how did you manage to get these statistics?

https://cfviz.netlify.com/

Thanks a lot ^^

Don't try to "learn" too much things, you should focus more on improving your thinking ability.

Of course learning is important too, but it should be progressive (no need to learn complicated tools when you're below blue) and only a

minorpart of your practice. CP is about problem solving, not pure knoweldge restitution. I think many low-rated coders forget this.If you are consistant with solving div2 A/B, then only solve div2 C/D, and never back to your comfort zone ( div2 A/B).

I've trained with this sheet and solved first two pages (A and B): Training roadmap for newcomers

Then I started solving by codeforces difficulty indicator, by choosing problems outside my comfort zone

I've been solved sheet A and almost 35 problems from sheet B , and now I'm start solving by difficulty it seems like your way, but what about topics how did you studied it ?

Thank you

The sheet has a topic page in it, but in my opinion, don't rush to learn topics if you aren't good at solving Div-2 B problems. Keep practicing in the sheet until finishing CF-B page (I think it will not take more than 3 or 4 weeks to finish), then start solving problems of 1400 difficulty. My level was like your level when I was practicing in CF-B page so don't worry and keep practicing :)

You need to learn to use your brain. Also, you to need to learn to persevere and be more hardworking at practicing problems on various online judges.

might be useful roadmap for u