competitive-programming

Implementing FFT

A derivation-oriented guide to FFT implementations, moving from recursive Cooley-Tukey to iterative and in-place variants without explicit bit reversal.

Write recursive DP without thinking about memoization

A C++ template for recursive DP with automatic memoization, built from recursive lambdas, generalized hashing, and policy-based hash tables.

The Akra-Bazzi theorem - a generalization of the master theorem for recurrences

A practical introduction to the Akra-Bazzi theorem as a way to analyze divide-and-conquer recurrences with unequal splits, floors, and offsets.

The Boost C++ library in competitive programming

The Boost C++ library and examples of what it would give competitive programmers beyond the standard library.

PSA: Increase your stack size before the Meta Hacker Cup, here's how

A short PSA on increasing stack limits before MHC, with commands, compiler flags, and platform caveats.

The Floyd-Warshall algorithm and its generalizations

A tour of Floyd-Warshall as an instance of aggregating over graph paths, leading to transitive closure, Kleene algebras, and the algebraic path problem.

User editorial for Codeforces Round 513 by Barcelona Bootcamp (rated, Div. 1 + Div. 2)

A user-written editorial for Codeforces Round 513, which did not have an editorial before.

Preserving Hash Code?

On preserving Google Hash Code problems and infrastructure before the contest archive disappears.

Improvement suggestions for CF Catalog

Suggestions for improving the Codeforces Catalog.

A comprehensive guide to permutations for beginners

A guide to permutations through orderings, cycles, and composition, with pointers to common competitive-programming applications.

Insights from testing and preparing contests, and why problemsetting trends need to change

Notes from testing and preparing programming contests.

Greedoids: a formal way to look at families of greedily-solvable problems

A tutorial on greedoids as a framework for understanding when greedy-style reasoning works, with examples from matroids, antimatroids, and related structures.

On using vim, make and gdb for online (CF, AtCoder) and onsite (ICPC, IOI) contests

A detailed competitive-programming setup guide for Vim, Make, and GDB, covering both onsite contest constraints and online practice.

On using C on Codeforces (and some compiler update requests)

A discussion of using C on Codeforces.

Catalan Numbers and Generating Uniform Balanced Bracket Sequences

A tutorial on Catalan numbers and uniform random balanced bracket generation, building bijections and generators from first principles.

InterviewForces Contest #1 (Div. 7)

The announcement for InterviewForces Contest #1, a Codeforces-style meme contest with nine problems.