TAMIM_CSE_53's blog

By TAMIM_CSE_53, history, 5 days ago, In English

How can I become a specialist?

I have studied the following topics: - Basic Data Structures (STLs) - Number Theory (Sieve and Segmented Sieve, Factorization, Binary & Large Exponentiation, Sum of Divisors (SOD), Euclidean Algorithm, Modular Arithmetic, Big Integers, Big Mod) - Combinatorics - Algorithms (Prefix Sum, Two Pointers, Sliding Window, Binary Search)

Although I understand the concepts of these topics, I am facing difficulties in applying them to problem-solving. I am unsure how to leverage these topics effectively to approach and solve problems. Could you provide guidance on how to overcome these challenges and improve my problem-solving skills? Additionally, are there any other topics I should focus on to further develop my expertise and work towards becoming a specialist in this field?

  • Vote: I like it
  • -3
  • Vote: I do not like it

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

Auto comment: topic has been updated by TAMIM_CSE_53 (previous revision, new revision, compare).

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

Auto comment: topic has been updated by TAMIM_CSE_53 (previous revision, new revision, compare).

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

"Although I understand the concepts of these topics, I am facing difficulties in applying them to problem-solving. I am unsure how to leverage these topics effectively to approach and solve problems" For this, you can pick some problems related to those topics and solve them, read editorials until being comfortable with those topics in applying.

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

start solving 1400-1600 problems. most of the problems you've solved are <= 1200. virtual contests are also helpful. try to upsolve contest until problems C at least.

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

    brother i lack in constructive algorithm and barely solve the problem. also sometimes i can solve problem B but most of the time i struggle to solve it. how to improve??

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

Consistent practice in an appropriate rating range should be enough.

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

one skill you need is deep thinking every approach you think how to build this :- ->this is my personal take every one is different this might not work for you — start solving 200+ rating problem to your current rating at start you will not be able to solve many so what i do is i read 2-3 questions and think for all solution in depth for hours and sometime day still if i am not able to solve i leave that and start a different question i do this for question i feel dont need any advance trick or data structure that i dont know

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

learn dp, graph, dsu, and focus on solving problems that u can't solve in Div.3 & Div.4.

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

I will probably express an unpopular opinion, but most of the problems you’ll encounter up to the Expert level are ad-hoc problems. Personally, I perceive this term as referring to problems that don’t rely on any specific data structure—there’s nothing concrete to latch onto except for general logic and observations. On my way to becoming a Specialist, I encountered dynamic programming once and binary search, at most, three times. And I probably won’t see them again until I reach Expert. Learning graphs, DSU, DP, and similar topics is interesting but impractical because reaching problems related to these topics in a contest is unlikely if you struggle with general thinking.

So, what are the ways to reach Specialist/Expert? There aren’t many:

  1. Quickly solving the first 2-3 problems (the first two within 30 minutes, the third within an hour—something like that).

  2. If you can’t solve one of them, solving the 4th or 5th instead (though let’s be honest, this path isn’t for everyone and rarely works).

  3. You can also stick to solving only Div3 and Div4 contests.

By the way, reaching Specialist is quite easy by consistently participating in Div3 and Div4. It’s better to avoid Div2 and Educational contests (especially Educational) if you’re struggling to become a Specialist. But after that, it’s up to you. There’s an opposite perspective— in russian we have "if you're afraid of wolves, don’t go into the forest", while in english it sounds like "Nothing ventured, nothing gained", meaning you should practice Div2 as well to gain a valuable experience.

The scariest part is that no one can guarantee success because structured training for solving ad-hoc problems is impossible—that’s what makes them ad-hoc. You just have to believe, keep solving problems, and keep going. That’s the only way.

TL;DR: To become a Specialist, the best training comes from Div3 and Div4. I also highly recommend ThemeCP—it’s an awesome project. And you just have to believe that it will work out because others have done it. I’ve seen people reach Specialist on their 105th contest. The key is to keep going toward your goal without giving up. Restarting is twice as hard.

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

    I truly admire how you have reached 1500 rating without having practiced many problems in the 1500 or more range, since whenever i ask how to reach X rating I'm told to do problems of X or more rating, and that problems of pupil or lesser rating don't have good ideas. However, this leads me to spending a lot of time on problems beyond my level and many times i don't even understand the editorial, hence not learning much and being discouraged instead.

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

      you can try solving problems from cses if haven't done any or more yet.

      • »
        »
        »
        »
        4 days ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        i have done the dp section and half of the sorting section in cses

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

          try to do some from mathematics , graph and trees section also . range queries is not needed at this level but if you want to learn why not but you need to give a shot to the first three.

»
4 days ago, # |
  Vote: I like it 0 Vote: I do not like it

Div 4 abuse.

  • »
    »
    4 days ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    not enough div4s

    • »
      »
      »
      4 days ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      A true div 4 abuser can jump from 1199 to 1400 in 1 div4

      • »
        »
        »
        »
        4 days ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        think i gotta get over my fear of losing rating points to truly abuse div4...

»
4 days ago, # |
  Vote: I like it 0 Vote: I do not like it

At the level of Specialist you don't need to learn algorithmic skills, you need to focus more on logical thinking based problems and need to solve the problems fast and try to minimize wrong submissions

»
4 days ago, # |
  Vote: I like it 0 Vote: I do not like it

you need to learn dynamic programming