BlueBeam's blog

By BlueBeam, history, 5 years ago, In English

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

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

| Write comment?
»
5 years ago, # |
  Vote: I like it +5 Vote: I do not like it

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.

  • »
    »
    5 years ago, # ^ |
    Rev. 2   Vote: I like it 0 Vote: I do not like it

    what book about algorithms did you read before reaching blue?

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      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.

»
5 years ago, # |
  Vote: I like it +29 Vote: I do not like it

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.net/blog/entry/66909

»
5 years ago, # |
  Vote: I like it +9 Vote: I do not like it

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.
randommm

»
5 years ago, # |
  Vote: I like it +19 Vote: I do not like it

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 minor part of your practice. CP is about problem solving, not pure knoweldge restitution. I think many low-rated coders forget this.

»
5 years ago, # |
  Vote: I like it +1 Vote: I do not like it

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).

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

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

  • »
    »
    5 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    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

    • »
      »
      »
      5 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      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 :)

»
5 years ago, # |
Rev. 2   Vote: I like it +17 Vote: I do not like it

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.

»
5 years ago, # |
  Vote: I like it 0 Vote: I do not like it

might be useful roadmap for u