Pyrival
A Python 'library' for Competitive Programming
Ever been trying to start with a competitive programming template?
This extension will solve the issue for you and your up and running with a full template.
![Gif](https://github.com/fixxtion/vscode-pyrival/raw/HEAD/code.gif)
Shortcuts / Commands
Algebra Commands
Command |
**Help Text ** |
alg.crt |
Creates Chinese Remainder Theorem (Multivariable) Template |
alg.dlog |
Creates Discrete Logarithm Template |
alg.lcmngcd |
Creates LCM and GCD Template |
alg.factor |
Creates Integer Factorization Template |
alg.fft |
Creates Fast Fourier Transform Template |
alg.fst |
Creates Fast Subset Transform Template |
alg.ntt |
Creates Number Theoretic Transform Template |
alg.isprime |
Creates Deterministic Miller-Rabin Primality Test Template |
alg.modsqrt |
Creates Tonelli–Shanks Algorithm Template |
alg.midinv |
Creates Generalized Modular Inverse Template |
alg.phi |
Creates Euler's Phi Function Template |
alg.proot |
Creates Primitive Root Template |
alg.sieve |
Creates Sieve of Eratosthenes Template |
Combinatorics Commands
Command |
**Help Text ** |
comb.general |
Creates General Purpose Numbers (Combinatorics) Template |
comb.lucas |
Creates Lucas's Theorem Template |
comb.part |
Creates Partition Function Template |
Data Structures Commands
Command |
**Help Text ** |
ds.barr |
Creates Bit Array Template |
ds.ftree |
Creates Binary Indexed (Fenwick) Tree Template |
ds.frac |
Creates Fraction Template |
ds.cfrac |
Creates Continued Fraction Template |
ds.dset |
Creates Disjoint-Set (Union Find) Template |
ds.node |
Creates Generic Nodes Template |
ds.llist |
Creates Linked List Template |
ds.rquery |
Creates Range Query Data Structure Template |
ds.lstree |
Creates (Lazy) Segment Tree Template |
ds.pstree |
Creates Persistent Segment Tree Template |
ds.slist |
Creates Sorted List Template |
ds.treap |
Creates Treap Template |
ds.trie |
Creates Trie Template |
ds.twosat |
Creates 2-satisfiability Template |
ds.heapq |
Creates Heapq Template |
ds.convex |
Creates Convex Hull Trick Template |
Geometery Commands
Command |
**Help Text ** |
geo.convex |
Creates Convex Hull Template |
geo.lines |
Creates Lines Function Template |
geo.polygons |
Creates Polygon Functions Template |
geo.vectors |
Creates Vectors Function Template |
Graphs Commands
Command |
**Help Text ** |
graph.bellman |
Creates Bellman-Ford Algorithm Template |
graph.bfs |
Creates Breadth First Search Template |
graph.ccs |
Creates Bellman-Ford Algorithm Template |
graph.brent |
Creates Brent's Algorithm for Cycle Detection Template |
graph.dfs |
Creates Depth First Search Template |
graph.dijkstra |
Creates Dijkstra's Algorithm Template |
graph.euler |
Creates Eulerian Path Template |
graph.pathcon |
Creates Path Constructor Template |
graph.floyd |
Creates Floyd-Warshall Algorithm Template |
graph.bcheck |
Creates Bipartite Graph Check Template |
graph.kruskal |
Creates Kruskal's Algorithm with Disjoin Set Union Template |
graph.prim |
Creates Prim's Algorithm Template |
graph.tarjan |
Creates Tarjan's Algorithm Template |
graph.sorttop |
Creates Topological Sorting Template |
Linear Algebra Commands
Command |
**Help Text ** |
lalg.matrix |
Creates Matrix Arithmetic, Exponentiation, Determinant, and Inverse Template |
lalg.maxxor |
Creates Gaussian Elimination Template |
lalg.crt |
Creates Multivariable Chinese Remainder Theorem Template |
Numerical Commands
Command |
**Help Text ** |
num.hill |
Creates Hill Climbing Algorithm Template |
num.integrate |
Creates Approximate Integration Template |
num.interpolate |
Creates Polynomial Interpolation Template |
num.iroot |
Creates Integer Roots Template |
num.search |
Creates Binary Search Template |
num.linear |
Creates Linear Recurrence Template |
Strings Commands
Command |
**Help Text ** |
str.hashing |
Creates Knuth–Morris–Pratt Algorithm Template |
str.lcs |
Creates Longest Common/Palindromic Subsequences Template |
str.lpsub |
Creates Longest Palindromic Substring Template |
str.minrot |
Creates Lydon Factorization Template |
str.zfun |
Creates Z Algorithm Template |
str.lcsub |
Creates Longest Common Substring Template |
Miscellaneous Commands
Command |
**Help Text ** |
!temp |
creates master template for cp |
misc.bootstrap |
Creates bootstrap for recursion template |
misc.fastio |
Creates FastIO Template |
misc.osort |
Creates Order Sort Template |
misc.random |
Creates random template |
misc.split |
Creates String Split Template |
misc.bithack |
Creates Bit Hacks Template |
misc.mod |
Creates 32-bit Modular Arithmetic Template |
misc.memoize |
Creates Memoize Decorators Template |
misc.ostream |
Creates C++ syle cout Template |
misc.alphabeta |
Creates Alpha–Beta Pruning Template |
misc.lis |
Creates Longest Increasing Subsequence Template |
misc.ostat |
Creates K-th Order Statistic Template |
Known Issues
No known issues so far.
Credits
| |