A personal archive of 400+ solved competitive programming problems from national and international informatics olympiad platforms.
This repository contains solutions written during my algorithmic training, mainly focused on problem solving, data structures, graph theory, dynamic programming, mathematics, and optimization.
pb is not a software product or framework. It is an algorithmic problem-solving archive built through long-term practice with olympiad-style programming tasks.
The goal of this repository was to train the ability to:
- understand complex problem statements;
- design efficient algorithms;
- reason about time and memory complexity;
- implement solutions under contest-style constraints;
- improve mathematical and logical thinking;
- build strong fundamentals in algorithms and data structures.
problems/
├── campion/ # Solutions from Campion / Romanian olympiad-style problems
└── infoarena/ # Solutions and classic algorithm implementations
The repository includes solutions involving:
-
Graph algorithms
- BFS
- DFS
- connected components
- Dijkstra
- Floyd–Warshall
- topological sorting
-
Data structures
- segment trees
- Fenwick trees / binary indexed trees
- sparse tables / RMQ
-
Dynamic programming
- longest increasing subsequence
- longest common subsequence
- recurrence-based optimization
-
Number theory
- Euclidean algorithm
- extended Euclidean algorithm
- sieve of Eratosthenes
- modular arithmetic
- fast exponentiation
-
String and expression processing
-
Sorting, searching, greedy algorithms, and combinatorics
-
etc.
Most solutions are written in:
- C++
- C
- Pascal
Some older solutions are intentionally kept in their original form to preserve the history of the training process.
This archive represents consistent algorithmic practice over hundreds of problems. It helped me develop strong fundamentals in:
- algorithm design;
- complexity analysis;
- low-level implementation details;
- debugging difficult edge cases;
- mathematical reasoning;
- writing efficient code with limited resources.
The code in this repository is contest-oriented. Many solutions prioritize correctness, performance, and fast implementation over production-style architecture.
For production software, I would normally apply different standards: clearer abstraction, tests, documentation, maintainability, and code review practices.
Ion Dodon