Competitive programming involves a bunch of small programming problems, whose solutions focus on the efficient use of algorithms and datastructures.
I first got into competitive programming during a uni course COMP4128, so this repository includes a number of problems I solved during that course, and then others I completed outside of uni.
Some algorithms covered include
- Disjoint Set Union (DSU)
- Greedy algorithms
- Dynamic Programming
- DP with bitsets
- Floyd Warshall
- Max flow / Min cut (with Dinitz)
- Range trees (/ segment trees)
- Binary search
- Dijkstra's