Блог пользователя HasNyen9

Автор HasNyen9, история, 22 месяца назад, По-английски

Hello guys,so Im a newbie here and i'm currently trying to solve A and B problems of the recent contests faster.Yes,I'm practicing,but do I have to learn algorithms at this stage?Or should I just keep solving problems.And if i should learn algorithms then from where do I begin?

  • Проголосовать: нравится
  • -4
  • Проголосовать: не нравится

»
22 месяца назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Just solve problems. Then learn binary search when you can solve A and B easily.

  • »
    »
    22 месяца назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    Lokeo It would be helpful if you can give some suggestions of at which rating one should learn which data structure & algorithm?

    • »
      »
      »
      21 месяц назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      1200-1300 binary search, simple DP

      1600-1700 2D-DP, segment tree, dijkstra algorithm, bitmasks

      1900-2000 DSU, SCC (strongly connected components)

      Btw, highly recommend reading this blog [https://codeforces.com/blog/entry/98806]

»
21 месяц назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

Just solve problem, hone your problem solving skills bro. Problems under 1800 rating usually don't require complex algorithms. As a newbie, I suggest learning basic stuff like binary search, quicksort (programming languages usually have these thing in libraries, so you don't even need to learn how to implement them, just learn how to use them), look up table, etc., then solving problems from a rating range until you can do problem in that rating more than 80% of the time, then jump to the next 100 ratings (for example: you solve 800 problems until you can solve 4 out of 5 problems by yourself, then jump to the next 100 rating, which is 900, then 1000, 1100, ...). Just jump until you got to 1700 — 1800, at this point you need to learn complex stuff like priority queue, trie, dsu, etc.