This repository is my personal technical reference for competitive programming. It functions as a dual-purpose library:
- The Code: A collection of optimized C++ implementations for the CSES Problem Set and standard algorithms.
- The Notes: An interlinked Obsidian Vault covering the theory behind data structures, complexity analysis, and problem-solving patterns.
I maintain this codebase to keep my algorithmic skills sharp and to have a reliable library of templates for contests.
The repository connects theory with practice:
Markdown notes structured as a knowledge graph.
- Core Concepts: Dynamic Programming, Graph Traversal (BFS/DFS), Number Theory.
- Analysis: Time complexity proofs and optimization techniques.
Solutions targeting C++20.
- CSES Solutions: Categorized by topic (Sorting, Searching, Graphs).
- Templates: Reusable snippets for standard problems (e.g., Segment Trees, DSU).
| Component | Usage |
|---|---|
| C++ (GCC) | Primary language for high-performance solutions. |
| Java | Secondary language for BigInteger and OOP patterns. |
| Obsidian | Markdown-based tool for linking concepts and notes. |
.
├── Algorithms/ # Standard algorithm implementations
├── Code/ # CSES Problem solutions (Categorized)
│ ├── Dynamic Programming/
│ ├── Graph Algorithms/
│ ├── Introductory Problems/
│ └── Sorting & Searching/
├── Notes/ # Obsidian theory notes
└── Templates/ # Contest boilerplate
This project is open for educational use under the MIT License.