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

Автор iamsourabhroy2004_jh, история, 2 недели назад, По-английски

Hey everyone!

I’m working on strengthening my competitive programming skills and want to ensure I’m covering all the essential algorithms and concepts. Here's what I have in mind so far:

Math & Number Theory

GCD/LCM, Modular Arithmetic, Prime Algorithms (Sieve), etc. Recursion & Backtracking

Classic problems like N-Queens, Subset Generation, and optimizations. Dynamic Programming (DP)

Knapsack, Subsequence Problems, Matrix DP, etc. Sorting & Searching

Binary Search, Two-pointer/Sliding Window, Merge/Quick Sort. Graph Algorithms

BFS, DFS, Shortest Path, MST, and Topological Sorting. Greedy Algorithms

Activity Selection, Interval Scheduling, Huffman Encoding. String Algorithms

KMP, Z Algorithm, Tries, and Suffix Arrays. Bit Manipulation

Subsets, Masking, and XOR Tricks. My Question: Am I missing any crucial algorithms or topics that I should focus on for competitive programming? What algorithms have helped you solve tricky problems?

I’d love to hear your recommendations or insights! Let’s build a comprehensive list together.

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

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

include ternary search

»
2 недели назад, # |
Rev. 2   Проголосовать: нравится +5 Проголосовать: не нравится

Kuhns algorithm , Segment tree , DSU , D&C , Sparse table. I think those algorithms are also important

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

If you're struggling as a beginner, you don't need to focus on advanced algorithms right away. Instead, concentrate on solving more constructive problems and mastering some essential techniques like:

1. Prefix Sum
2. Sliding Window
3. Two Pointers
4. Meet-in-the-Middle
5. Binary Search on Answer
6. Lower Bound and Upper Bound
7. Basic Math Concepts (e.g., GCD, LCM, Prime Sieve)
8. Arithmetic Progression (AP) and Geometric Progression (GP)
9. Solve more and more constructive Problems, It increases your logic exponentially 

These foundational tricks will help you build a strong problem-solving base.