Hello people of Codeforces!
I'd like to introduce a website I've been working on, and that I'm hoping to grow into something bigger: algoteka.com
In essence, it's a site for submitting code samples that solve problems and for finding code snippets in the language and technology stack you want for your problem (and possibly compare different approaches). We are planning to grow an monetize this site, and to compensate our content submitters appropriately for the value they bring.
To start out, I decided to populate it with a lot of the algorithms I've used myself in competitive programming, for instance:
Data structures:
- Heap (and the STL implementation)
- Fenwick Tree
- Segment Tree
- Lazy Propagation Segment Tree
- Persistent Segment Tree
Mathematical Algorithms:
- Extended Euclidean Algorithm
- Sieve of Eratosthenes
- Miller-Rabin Primality Test
- Fast Fourier Transform algorithm (and its use for fast fast polynomial multiplication)
Geometric Algorithms:
Graph Algorithms:
- Depth-First Search
- Breadth-First Search
- Dijkstra's Shortest Path Algorithm
- Eulerian Cycle Alrogithm
- Bridge-Finding Algorithm
Network Flow Algorithms:
- Ford-Fulkerson Algorithm
- Dinic's Algorithm
- Cycle Canceling Min-Cost Flow Algorithm
- Successive Shortest Path Min-Cost Max-Flow Algorithm
- Primal-Dual Min-Cost Max-Flow Algorithm
String Algorithms:
Algorithms for NP-Hard Problems:
- Dynamic Programming Solution for the Knapsack Problem
- Meet-in-the-middle Solution for the Knapsack Problem
- Dynamic Programming Solution for the Travelling Salesman Problem
I hope you find my code snippets useful, and you are very welcome to join the site and start submitting your own code snippets for these problems (potentially in different languages or approaches), or even create new problems to submit samples for (we plan to cover more than just the topics of competitive programming). You are also welcome to use the forum features of the site to discuss samples or problems there, or any related topics.