Tags¶
This file contains a global index of all tags used on the pages.
Original¶
- 0-1 BFS
- Basic Geometry
- Binary Search
- Bit manipulation
- Continued fractions
- Convex hull trick and Li Chao tree
- Deleting from a data structure in O(T(n) log n)
- Divide and Conquer DP
- Factoring Exponentiation
- Half-plane intersection - S&I Algorithm in O(N log N)
- Integer factorization
- Introduction to Dynamic Programming
- Knapsack Problem
- Knuth's Optimization
- Kraut & Determinant
- Lattice points of non-lattice polygon
- MEX task (Minimal Excluded element in an array)
- Manhattan Distance
- Maximum flow - MPM algorithm
- Minkowski sum of convex polygons
- Montgomery Multiplication
- Number of divisors / sum of divisors
- Operations on polynomials and series
- Point location in O(log N)
- Primality tests
- Second best Minimum Spanning Tree - Using Kruskal and Lowest Common Ancestor
- Sparse Table
- Sqrt Tree
- Stars and bars
- Strong Orientation
- Tortoise and Hare Algorithm (Linked List cycle detection)
Translated¶
- 15 Puzzle Game: Existence Of The Solution
- 2-SAT
- Aho-Corasick algorithm
- Arbitrary-Precision Arithmetic
- Area of simple polygon
- Assignment problem
- Balanced Ternary
- Balanced bracket sequences
- Bellman-Ford - finding shortest paths with negative weights
- Binary Exponentiation
- Binomial Coefficients
- Bipartite Graph Check
- Breadth First Search
- Burnside's lemma / Pólya enumeration theorem
- Catalan Numbers
- Check if points belong to the convex polygon in O(log N)
- Check if two segments intersect
- Checking a graph for acyclicity and finding a cycle in O(M)
- Chinese Remainder Theorem
- Circle-Circle Intersection
- Circle-Line Intersection
- Common tangents to two circles
- Convex hull construction
- Counting labeled graphs
- Delaunay triangulation and Voronoi diagram
- Depth First Search
- Dijkstra - finding shortest paths from given vertex
- Dijkstra on sparse graphs
- Discrete Log
- Discrete Root
- Disjoint Set Union
- Dynamic Programming on Broken Profile. Problem "Parquet"
- D´Esopo-Pape algorithm
- Edge connectivity / Vertex connectivity
- Enumerating submasks of a bitmask
- Euclidean algorithm for computing the greatest common divisor
- Euler's totient function
- Eulerian Path
- Expression parsing
- Extended Euclidean Algorithm
- Factorial modulo p
- Fast Fourier transform
- Fenwick Tree
- Fibonacci Numbers
- Finding Articulation Points in O(N+M)
- Finding Bridges Online
- Finding Bridges in O(N+M)
- Finding Connected Components
- Finding Power of Factorial Divisor
- Finding a Negative Cycle in the Graph
- Finding faces of a planar graph
- Finding repetitions
- Finding the equation of a line for a segment
- Finding the largest zero submatrix
- Finding the nearest pair of points
- Flows with demands
- Floyd-Warshall - finding all shortest paths
- Games on arbitrary graphs
- Gauss & Determinant
- Gauss & System of Linear Equations
- Generating all K-combinations
- Gray code
- Heavy-light decomposition
- Hungarian Algorithm
- Integration by Simpson's formula
- Intersection Point of Lines
- Intersection of Segments
- Josephus problem
- K-th order statistic in O(N)
- Kirchhoff Theorem
- Kuhn's Algorithm - Maximum Bipartite Matching
- Length of the union of segments
- Linear Congruence Equation
- Linear Diophantine Equations
- Linear Sieve
- Longest increasing subsequence
- Lowest Common Ancestor
- Lowest Common Ancestor - Binary Lifting
- Lowest Common Ancestor - Farach-Colton and Bender algorithm
- Lowest Common Ancestor - Tarjan's off-line algorithm
- Lyndon factorization
- Manacher's Algorithm - Finding all sub-palindromes in O(N)
- Maximum flow - Dinic's algorithm
- Maximum flow - Ford-Fulkerson and Edmonds-Karp
- Maximum flow - Push-relabel algorithm
- Maximum flow - Push-relabel algorithm improved
- Minimum Spanning Tree - Kruskal
- Minimum Spanning Tree - Kruskal with Disjoint Set Union
- Minimum Spanning Tree - Prim's Algorithm
- Minimum Stack / Minimum Queue
- Minimum-cost flow
- Modular Inverse
- Newton's method for finding roots
- Number of paths of fixed length / Shortest paths of fixed length
- Optimal schedule of jobs given their deadlines and durations
- Oriented area of a triangle
- Pick's Theorem - area of lattice polygons
- Placing Bishops on a Chessboard
- Prefix function - Knuth-Morris-Pratt
- Primitive Root
- Prüfer code
- RMQ task (Range Minimum Query - the smallest element in an interval)
- Rabin-Karp for String Matching
- Randomized Heap
- Rank of a matrix
- Scheduling jobs on one machine
- Scheduling jobs on two machines
- Search for a pair of intersecting segments
- Search the subsegment with the maximum/minimum sum
- Segment Tree
- Sieve of Eratosthenes
- Solve RMQ by finding LCA
- Sprague-Grundy theorem. Nim
- Sqrt Decomposition
- String Hashing
- Strongly Connected Components and Condensation Graph
- Suffix Array
- Suffix Automaton
- Suffix Tree
- Ternary Search
- The Inclusion-Exclusion Principle
- The Stern-Brocot Tree and Farey Sequences
- Topological Sorting
- Treap
- Tree painting
- Vertical decomposition
- Z-function