├── Benchmarking utilities ├── benchmark.cpp └── description.txt ├── Binary Search ├── const_intervals.cpp ├── description.txt └── first_to_satisfy.cpp ├── Bump Allocator (Turning dynamic allocation into static allocation) ├── bump_allocator.cpp └── description.txt ├── Centroid Decomposition ├── centroid.cpp └── description.txt ├── Chinese Remainder Theorem ├── crt.cpp └── description.txt ├── Convex Hull Trick ├── convex_hull_trick.cpp └── description.txt ├── Coordinate Compression ├── coord comp.cpp └── description.txt ├── FFT ├── description.txt ├── fft.cpp ├── fftmod.cpp └── ntt.cpp ├── Fast IO ├── description.txt ├── read_float.cpp └── read_int.cpp ├── Gaussian Elimination ├── description.txt └── gauss.cpp ├── Geometry ├── base.cpp ├── circle.cpp ├── convex.cpp ├── description.txt ├── halfplane.cpp ├── polygon.cpp └── segment.cpp ├── LCA (Lowest Common Ancestor) ├── description.txt ├── lca binary lifting.cpp └── lca rmq.cpp ├── Linear Recurrence (Berlekamp Massey, K-th term) ├── BerlekampMassey.cpp ├── Kth-term.cpp └── description.txt ├── Longest Increasing Subsequence(LIS) ├── description.txt └── lis.cpp ├── Manacher (Finds the length of the longest odd and even palindromes centered on an index): O(N) ├── description.txt └── manacher.cpp ├── Matrix Exponentiation ├── description.txt └── matrixexpo.cpp ├── Max Flow (Dinic's, HLPP) ├── description.txt ├── dinic.cpp └── hlpp.cpp ├── Miller Rabin: primality test ├── description.txt └── millerabin.cpp ├── Min Cost Max Flow ├── bellman-ford.cpp └── description.txt ├── Minimum Rotation: O(N) ├── description.txt └── min_rotation.cpp ├── Mod Sum: sum_{i=0}^{to-1} (k*i+c)%m: log(m) with large constant ├── description.txt └── modsum.cpp ├── Number Theory Sieves ├── description.txt ├── mobius.cpp ├── primes.cpp ├── segmented sieve.cpp └── totient.cpp ├── Numerical Integration (Simpson's) ├── adaptive.cpp └── description.txt ├── Permutation Mapping: Permutations to └── from integers - order preserving │ ├── description.txt │ └── intperm.cpp ├── README.md ├── Random Snippets (Stuff that's not reusable but were painful to write that I wrote nicely and am happy with) ├── description.txt └── merging two paths on tree.cpp ├── SOS DP (Sum over Subsets DP) ├── description.txt └── sosdp.cpp ├── Segment tree ├── 2D BIT.cpp ├── 2D Seg.cpp ├── abstract.cpp ├── description.txt ├── dynamic.cpp ├── lazy propagation.cpp ├── pointer.cpp ├── range modify point query.cpp └── range query point modify (standard).cpp ├── Suffix Array ├── description.txt └── suffix_array.cpp ├── Treap ├── description.txt └── treap.cpp ├── Tree Diameter: O(N) ├── description.txt └── diameter.cpp └── get_gists.py /Benchmarking utilities/benchmark.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Benchmarking utilities/benchmark.cpp -------------------------------------------------------------------------------- /Benchmarking utilities/description.txt: -------------------------------------------------------------------------------- 1 | Benchmarking utilities 2 | -------------------------------------------------------------------------------- /Binary Search/const_intervals.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Binary Search/const_intervals.cpp -------------------------------------------------------------------------------- /Binary Search/description.txt: -------------------------------------------------------------------------------- 1 | Binary Search 2 | -------------------------------------------------------------------------------- /Binary Search/first_to_satisfy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Binary Search/first_to_satisfy.cpp -------------------------------------------------------------------------------- /Bump Allocator (Turning dynamic allocation into static allocation)/bump_allocator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Bump Allocator (Turning dynamic allocation into static allocation)/bump_allocator.cpp -------------------------------------------------------------------------------- /Bump Allocator (Turning dynamic allocation into static allocation)/description.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Bump Allocator (Turning dynamic allocation into static allocation)/description.txt -------------------------------------------------------------------------------- /Centroid Decomposition/centroid.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Centroid Decomposition/centroid.cpp -------------------------------------------------------------------------------- /Centroid Decomposition/description.txt: -------------------------------------------------------------------------------- 1 | Centroid Decomposition 2 | -------------------------------------------------------------------------------- /Chinese Remainder Theorem/crt.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Chinese Remainder Theorem/crt.cpp -------------------------------------------------------------------------------- /Chinese Remainder Theorem/description.txt: -------------------------------------------------------------------------------- 1 | Chinese Remainder Theorem 2 | -------------------------------------------------------------------------------- /Convex Hull Trick/convex_hull_trick.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Convex Hull Trick/convex_hull_trick.cpp -------------------------------------------------------------------------------- /Convex Hull Trick/description.txt: -------------------------------------------------------------------------------- 1 | Convex Hull Trick 2 | -------------------------------------------------------------------------------- /Coordinate Compression/coord comp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Coordinate Compression/coord comp.cpp -------------------------------------------------------------------------------- /Coordinate Compression/description.txt: -------------------------------------------------------------------------------- 1 | Coordinate Compression 2 | -------------------------------------------------------------------------------- /FFT/description.txt: -------------------------------------------------------------------------------- 1 | FFT 2 | -------------------------------------------------------------------------------- /FFT/fft.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/FFT/fft.cpp -------------------------------------------------------------------------------- /FFT/fftmod.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/FFT/fftmod.cpp -------------------------------------------------------------------------------- /FFT/ntt.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/FFT/ntt.cpp -------------------------------------------------------------------------------- /Fast IO/description.txt: -------------------------------------------------------------------------------- 1 | Fast IO 2 | -------------------------------------------------------------------------------- /Fast IO/read_float.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Fast IO/read_float.cpp -------------------------------------------------------------------------------- /Fast IO/read_int.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Fast IO/read_int.cpp -------------------------------------------------------------------------------- /Gaussian Elimination/description.txt: -------------------------------------------------------------------------------- 1 | Gaussian Elimination 2 | -------------------------------------------------------------------------------- /Gaussian Elimination/gauss.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Gaussian Elimination/gauss.cpp -------------------------------------------------------------------------------- /Geometry/base.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Geometry/base.cpp -------------------------------------------------------------------------------- /Geometry/circle.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Geometry/circle.cpp -------------------------------------------------------------------------------- /Geometry/convex.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Geometry/convex.cpp -------------------------------------------------------------------------------- /Geometry/description.txt: -------------------------------------------------------------------------------- 1 | Geometry 2 | -------------------------------------------------------------------------------- /Geometry/halfplane.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Geometry/halfplane.cpp -------------------------------------------------------------------------------- /Geometry/polygon.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Geometry/polygon.cpp -------------------------------------------------------------------------------- /Geometry/segment.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Geometry/segment.cpp -------------------------------------------------------------------------------- /LCA (Lowest Common Ancestor)/description.txt: -------------------------------------------------------------------------------- 1 | LCA (Lowest Common Ancestor) 2 | -------------------------------------------------------------------------------- /LCA (Lowest Common Ancestor)/lca binary lifting.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/LCA (Lowest Common Ancestor)/lca binary lifting.cpp -------------------------------------------------------------------------------- /LCA (Lowest Common Ancestor)/lca rmq.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/LCA (Lowest Common Ancestor)/lca rmq.cpp -------------------------------------------------------------------------------- /Linear Recurrence (Berlekamp Massey, K-th term)/BerlekampMassey.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Linear Recurrence (Berlekamp Massey, K-th term)/BerlekampMassey.cpp -------------------------------------------------------------------------------- /Linear Recurrence (Berlekamp Massey, K-th term)/Kth-term.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Linear Recurrence (Berlekamp Massey, K-th term)/Kth-term.cpp -------------------------------------------------------------------------------- /Linear Recurrence (Berlekamp Massey, K-th term)/description.txt: -------------------------------------------------------------------------------- 1 | Linear Recurrence (Berlekamp Massey, K-th term) 2 | -------------------------------------------------------------------------------- /Longest Increasing Subsequence(LIS)/description.txt: -------------------------------------------------------------------------------- 1 | Longest Increasing Subsequence(LIS) 2 | -------------------------------------------------------------------------------- /Longest Increasing Subsequence(LIS)/lis.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Longest Increasing Subsequence(LIS)/lis.cpp -------------------------------------------------------------------------------- /Manacher (Finds the length of the longest odd and even palindromes centered on an index): O(N)/description.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Manacher (Finds the length of the longest odd and even palindromes centered on an index): O(N)/description.txt -------------------------------------------------------------------------------- /Manacher (Finds the length of the longest odd and even palindromes centered on an index): O(N)/manacher.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Manacher (Finds the length of the longest odd and even palindromes centered on an index): O(N)/manacher.cpp -------------------------------------------------------------------------------- /Matrix Exponentiation/description.txt: -------------------------------------------------------------------------------- 1 | Matrix Exponentiation 2 | -------------------------------------------------------------------------------- /Matrix Exponentiation/matrixexpo.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Matrix Exponentiation/matrixexpo.cpp -------------------------------------------------------------------------------- /Max Flow (Dinic's, HLPP)/description.txt: -------------------------------------------------------------------------------- 1 | Max Flow (Dinic's, HLPP) 2 | -------------------------------------------------------------------------------- /Max Flow (Dinic's, HLPP)/dinic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Max Flow (Dinic's, HLPP)/dinic.cpp -------------------------------------------------------------------------------- /Max Flow (Dinic's, HLPP)/hlpp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Max Flow (Dinic's, HLPP)/hlpp.cpp -------------------------------------------------------------------------------- /Miller Rabin: primality test/description.txt: -------------------------------------------------------------------------------- 1 | Miller Rabin: primality test 2 | -------------------------------------------------------------------------------- /Miller Rabin: primality test/millerabin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Miller Rabin: primality test/millerabin.cpp -------------------------------------------------------------------------------- /Min Cost Max Flow/bellman-ford.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Min Cost Max Flow/bellman-ford.cpp -------------------------------------------------------------------------------- /Min Cost Max Flow/description.txt: -------------------------------------------------------------------------------- 1 | Min Cost Max Flow 2 | -------------------------------------------------------------------------------- /Minimum Rotation: O(N)/description.txt: -------------------------------------------------------------------------------- 1 | Minimum Rotation: O(N) 2 | -------------------------------------------------------------------------------- /Minimum Rotation: O(N)/min_rotation.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Minimum Rotation: O(N)/min_rotation.cpp -------------------------------------------------------------------------------- /Mod Sum: sum_{i=0}^{to-1} (k*i+c)%m: log(m) with large constant/description.txt: -------------------------------------------------------------------------------- 1 | Mod Sum: sum_{i=0}^{to-1} (k*i+c)%m: log(m) with large constant 2 | -------------------------------------------------------------------------------- /Mod Sum: sum_{i=0}^{to-1} (k*i+c)%m: log(m) with large constant/modsum.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Mod Sum: sum_{i=0}^{to-1} (k*i+c)%m: log(m) with large constant/modsum.cpp -------------------------------------------------------------------------------- /Number Theory Sieves/description.txt: -------------------------------------------------------------------------------- 1 | Number Theory Sieves 2 | -------------------------------------------------------------------------------- /Number Theory Sieves/mobius.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Number Theory Sieves/mobius.cpp -------------------------------------------------------------------------------- /Number Theory Sieves/primes.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Number Theory Sieves/primes.cpp -------------------------------------------------------------------------------- /Number Theory Sieves/segmented sieve.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Number Theory Sieves/segmented sieve.cpp -------------------------------------------------------------------------------- /Number Theory Sieves/totient.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Number Theory Sieves/totient.cpp -------------------------------------------------------------------------------- /Numerical Integration (Simpson's)/adaptive.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Numerical Integration (Simpson's)/adaptive.cpp -------------------------------------------------------------------------------- /Numerical Integration (Simpson's)/description.txt: -------------------------------------------------------------------------------- 1 | Numerical Integration (Simpson's) 2 | -------------------------------------------------------------------------------- /Permutation Mapping: Permutations to/from integers - order preserving/description.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Permutation Mapping: Permutations to/from integers - order preserving/description.txt -------------------------------------------------------------------------------- /Permutation Mapping: Permutations to/from integers - order preserving/intperm.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Permutation Mapping: Permutations to/from integers - order preserving/intperm.cpp -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/README.md -------------------------------------------------------------------------------- /Random Snippets (Stuff that's not reusable but were painful to write that I wrote nicely and am happy with)/description.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Random Snippets (Stuff that's not reusable but were painful to write that I wrote nicely and am happy with)/description.txt -------------------------------------------------------------------------------- /Random Snippets (Stuff that's not reusable but were painful to write that I wrote nicely and am happy with)/merging two paths on tree.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Random Snippets (Stuff that's not reusable but were painful to write that I wrote nicely and am happy with)/merging two paths on tree.cpp -------------------------------------------------------------------------------- /SOS DP (Sum over Subsets DP)/description.txt: -------------------------------------------------------------------------------- 1 | SOS DP (Sum over Subsets DP) 2 | -------------------------------------------------------------------------------- /SOS DP (Sum over Subsets DP)/sosdp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/SOS DP (Sum over Subsets DP)/sosdp.cpp -------------------------------------------------------------------------------- /Segment tree/2D BIT.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/2D BIT.cpp -------------------------------------------------------------------------------- /Segment tree/2D Seg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/2D Seg.cpp -------------------------------------------------------------------------------- /Segment tree/abstract.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/abstract.cpp -------------------------------------------------------------------------------- /Segment tree/description.txt: -------------------------------------------------------------------------------- 1 | Segment tree 2 | -------------------------------------------------------------------------------- /Segment tree/dynamic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/dynamic.cpp -------------------------------------------------------------------------------- /Segment tree/lazy propagation.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/lazy propagation.cpp -------------------------------------------------------------------------------- /Segment tree/pointer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/pointer.cpp -------------------------------------------------------------------------------- /Segment tree/range modify point query.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/range modify point query.cpp -------------------------------------------------------------------------------- /Segment tree/range query point modify (standard).cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Segment tree/range query point modify (standard).cpp -------------------------------------------------------------------------------- /Suffix Array/description.txt: -------------------------------------------------------------------------------- 1 | Suffix Array 2 | -------------------------------------------------------------------------------- /Suffix Array/suffix_array.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Suffix Array/suffix_array.cpp -------------------------------------------------------------------------------- /Treap/description.txt: -------------------------------------------------------------------------------- 1 | Treap 2 | -------------------------------------------------------------------------------- /Treap/treap.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Treap/treap.cpp -------------------------------------------------------------------------------- /Tree Diameter: O(N)/description.txt: -------------------------------------------------------------------------------- 1 | Tree Diameter: O(N) 2 | -------------------------------------------------------------------------------- /Tree Diameter: O(N)/diameter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/Tree Diameter: O(N)/diameter.cpp -------------------------------------------------------------------------------- /get_gists.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chillee/Algorithms/HEAD/get_gists.py --------------------------------------------------------------------------------