Competitive Programming Library
Project description
PyRival
A Python Library for Competitive Programming
Developers
Templates
- The Master Template works with all versions of Python and has Python 3 behaviour.
- Version Specific Templates: PyPy 2, Python 3
Tools
Snippets
Algebra
- (Multivariable) Chinese Remainder Theorem
- Discrete Logarithm
- Least Common Multiple
- Integer Factorization
- Fast Fourier Transform
- Fast Subset Transform
- Number Theoretic Transform
- Deterministic Miller-Rabin Primality Test
- Tonelli–Shanks Algorithm
- Generalized Modular Inverse
- Euler's Phi Function
- Primitive Root
- Sieve of Eratosthenes
Data Structures
- Bit Array
- Binary Indexed (Fenwick) Tree
- Fractions
- Continued Fractions
- Disjoint-Set (Union Find) Data Structure
- Generic Nodes
- Linked List
- Range Query Data Structure
- (Lazy) Segment Tree
- Persistent Segment Tree
- Sorted List
- Treap
- Trie Tree
- 2-satisfiability Template
Geometry
- Convex Hull
- Line Functions
- Polygon Functions
- Vector Functions
Graphs
- Bellman-Ford Algorithm
- Breadth First Search
- Connected Components Search
- Brent's Algorithm for Cycle Detection
- Depth First Search
- Dijkstra's Algorithm
- Eulerian Path
- Path Constructor
- Floyd-Warshall Algorithm
- Bipartite Graph Check
- Kruskal's Algorithm with Disjoin Set Union
- Prim's Algorithm
- Tarjan's Algorithm
- Topological Sorting
Combinatorics
- General Purpose Numbers
- Lucas's Theorem
- Partition Function
Linear Algebra
- Matrix Arithmetic, Exponentiation, Determinant, and Inverse
- Gaussian Elimination
- Multivariable Chinese Remainder Theorem
Numerical
- Linear Recurrence Template
- Hill Climbing Algorithm
- Approximate Integration
- Polynomial Interpolation
- Integer Roots
- Binary Search
Strings
- Knuth–Morris–Pratt Algorithm
- Longest Common/Palindromic Subsequences
- Longest Common Substring
- Manacher's Algorithm
- Lydon Factorization
Misc
- bootstrap for recursion
- FastIO
- heapq
- sorted
- py3k compatibility tools
- random
- str.split for whitespace
- Bit Hacks
- 32-bit Modular Arithmetic
- Memoize Decorators
- C++ syle cout
- Interactive Runner
- Stress Tester
- Alpha–Beta Pruning
- Longest Increasing Subsequence
- K-th Order Statistic
Apache License 2.0
Copyright (c) 2020 Cheran Senthilkumar
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
PyRival-0.2.0.tar.gz
(439.2 kB
view details)
Built Distribution
PyRival-0.2.0-py3-none-any.whl
(62.4 kB
view details)
File details
Details for the file PyRival-0.2.0.tar.gz
.
File metadata
- Download URL: PyRival-0.2.0.tar.gz
- Upload date:
- Size: 439.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53bfb678f6c13edec70191e9e9febfc7da4292f0ac1c6af64c608127c77208d9 |
|
MD5 | 8d7ff5934a989ec1421cafa34b3923ce |
|
BLAKE2b-256 | 1f80ea89005f7ae1fae28a9f22869b914cff6a8a8d38e7a52647fae942357569 |
File details
Details for the file PyRival-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: PyRival-0.2.0-py3-none-any.whl
- Upload date:
- Size: 62.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0d111f00699ec6184ee1409e0147f5570fae99c75061e60327eda353375398a6 |
|
MD5 | 011566d75dbf9ec0e91441f11e08a37a |
|
BLAKE2b-256 | 02a40a1212755e071058c48ba9c886df784ebf4777a7e3ac73afe56c3b4f39b5 |