One must have basic idea and clear concepts of Data Structures and Algorithms before diving into this sport called "Competitive Coding".
Before getting started, have a look at this site: CP-Algorithms, a one stop solution for all competitive coders. This will be very helpful at later stages of this journey.
- Dynamic Programming Notes Hackerearth
- DP Tutorial involving grids
- Divide and Conquer DP
- TopCoder Tutorial on DP
- Some classical problems:
- Practice Problems:
- String manipulation(basics)
- Z algorithm & Z algorithm II
- Manachar's algorithm & Manacher's algorithm II
- String Hashing
- KMP algorithm
- Rabin-Karp and KMP TopCoder
| ☆ | Problem Link | Finished |
|---|---|---|
| ★☆☆ | Compiler Version | |
| ★★☆ | Secrete Messages! | |
| ★★☆ | String Queries | |
| ★★☆ | Largest Lexicographical Rotation II | |
| ★★☆ | EasyPalindrome | |
| ★★★ | Statistics of strings | |
| ★★★ | Last Forever |
| ☆ | Problem Link | Finished |
|---|---|---|
| ★☆☆ | Palindrome Index | |
| ★☆☆ | Weighted Uniform Strings | |
| ★★☆ | Sherlock and Anagrams | |
| ★★☆ | Bear and Steady Gene | |
| ★★★ | Circular Palindromes |
| ☆ | Problem Link | Finished |
|---|---|---|
| ★★☆ | Another Problem on Strings | |
| ★★☆ | AB-string | |
| ★★★ | Prefixes and Suffixes |
| ☆ | Problem Link | Finished |
|---|---|---|
| ★☆☆ | Same Tree | |
| ★☆☆ | Invert Binary Tree | |
| ★★☆ | Binary Tree Longest Consecutive Sequence | |
| ★★☆ | Most Frequent Subtree Sum | |
| ★★☆ | Lowest Common Ancestor of a binary tree | |
| ★★☆ | N-ary Tree Level Order Traversal | |
| ★★★ | Sum of distances in tree |
- Algorithm Gym :: Graph Algorithms
- Basic Graph Theory
- 🎥 Breadth-First Search(MIT OCW playlist-Youtube)
- 🎥 Depth-First Search, Topological Sort (MIT OCW playlist-Youtube)
| ☆ | Problem Link | Finished |
|---|---|---|
| ★☆☆ | PPATH(SPOJ) | |
| ★☆☆ | Draughts(CodeChef) | |
| ★★☆ | Distant Relatives(CodeChef |
-
Dijkstra
-
🎥 Dijkstra's Algorithm Single Source Shortest Path Graph Algorithm(Youtube)
-
Bellman Ford
-
🎥 Bellman-Ford Algorithm Single Source Shortest Path Graph Algorithm(Youtube)
-
Floyd Warshall
-
🎥 Floyd Warshall Algorithm All Pair Shortest Path Graph Algorithm(Youtube)
| ☆ | Problem Link | Finished |
|---|---|---|
| ★★☆ | Minimum Valid Path | |
| ★★☆ | Chef and Digit Jumps | |
| ★★☆ | Road Decoration | |
| ★★☆ | Mice and Maze |
| ☆ | Problem Link | Finished |
|---|---|---|
| ★☆☆ | Marriage Problem | |
| ★★☆ | Roads not only in Berland | |
| ★★☆ | Lexicographically minimal string | |
| ★★☆ | Consecutive Letters |
- 🎥 Kruskal's algorithm Minimum Spanning Tree Graph Algorithm(Youtube)
- Minimum spanning tree - Kruskal with Disjoint Set Union(CP-Algorithms)
| ☆ | Problem Link | Finished |
|---|---|---|
| ★★☆ | Bytelandian Blingors Network | |
| ★★☆ | Roads in HackerLand | |
| ★★☆ | MST Queries | |
| ★★☆ | Cost |
- 🎥 Video, for better Understanding and Visualisation(Youtube)
- Blog, with Explanation, Implementation and Practice Problems(CP-Algorithms)
| ☆ | Problem Link | Finished |
|---|---|---|
| ★☆☆ | Thor | |
| ★☆☆ | Zeros and Ones | |
| ★★☆ | Help Ashu | |
| ★★☆ | Distinct Digits II | |
| ★★☆ | Micro and Array Function |
We hope you now know the roadmap to being a professional Competitive Coder ✌️
