Algorithmic Paradigms
Backtracking, greedy, divide and conquer, DP, and binary search on answers.
-
Brute Force, Backtracking & Pruning
Sizing the search space, subsets and permutations, backtracking, pruning, meet in the middle, and iterative deepening.
-
Greedy & Exchange Arguments
Proving a greedy choice with exchange arguments, choosing the sort key, and cases where greedy fails.
-
Divide and Conquer
Merge sort as the template, counting inversions, closest pair, and Karatsuba.
-
Dynamic Programming: States & Transitions
Choosing states and transitions, memoization vs bottom-up, and counting the state space.
-
Classic DP Families
Knapsack, coin change, LIS, edit distance and LCS, interval DP, bitmask DP, and tree DP.
-
DP Optimization & Space Reduction
Rolling arrays, loop order, monotonic deque and prefix-max transitions, and when not to optimize.
-
Binary Search On The Answer
Monotone predicates, feasibility checks, integer and floating-point loops, and minimize-the-maximum problems.
-
Sweep Line & Interval Techniques
Sorting events, interval merging and overlap, maximum concurrency, segment intersection, and coordinate compression.
Up next
23 of 23 questions here are still unsolved.