Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

Java Competitive Programming Template

A lightweight Java template containing the algorithms and helper methods that I frequently use during competitive programming and coding interviews.


Features

Mod — Modular Arithmetic

Function Description
add(a, b) Modular addition
sub(a, b) Modular subtraction
mul(a, b) Modular multiplication
inv(a) Modular inverse
div(a, b) Modular division

Mth — Mathematical Utilities

Function Description
gcd(a, b) Greatest Common Divisor
lcm(a, b) Least Common Multiple
pow(b, e, m) Binary Exponentiation
prime(n) Prime Check
sieve(n) Sieve of Eratosthenes

Arr — Array Utilities

Function Description
lb(arr, x) Lower Bound
ub(arr, x) Upper Bound
pSum(arr) Prefix Sum
sSum(arr) Suffix Sum
pMin(arr) Prefix Minimum
sMin(arr) Suffix Minimum
pMax(arr) Prefix Maximum
sMax(arr) Suffix Maximum
pGcd(arr) Prefix GCD
sGcd(arr) Suffix GCD

Stk — Monotonic Stack

Function Description
nge(arr) Next Greater Element
ngeIndex(arr) Next Greater Element Index

Grd — Grid Utilities

Function Description
ok(r,c,R,C) Check valid cell
dfs(...) Depth First Search
bfs(...) Breadth First Search

Util — General Utilities

Function Description
swap() Swap array elements
reverse() Reverse array
max() Maximum element
min() Minimum element
print() Print arrays

About

Java Competitive Programming Template for coding contests and interviews.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages