<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel> <title>Algorithms for Competitive Programming</title><description>The goal of this project is to translate the wonderful resource http://e-maxx.ru/algo which provides descriptions of many algorithms and data structures especially popular in field of competitive programming. Moreover we want to improve the collected knowledge by extending the articles and adding new articles to the collection.</description><link>https://cp-algorithms.com/</link><atom:link href="https://cp-algorithms.com/feed_rss_updated.xml" rel="self" type="application/rss+xml" /> <docs>https://github.com/cp-algorithms/cp-algorithms</docs><language>en</language> <pubDate>Wed, 11 Mar 2026 00:00:02 -0000</pubDate> <lastBuildDate>Wed, 11 Mar 2026 00:00:02 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.17.9</generator> <image> <url>None</url> <title>Algorithms for Competitive Programming</title> <link>https://cp-algorithms.com/</link> </image> <item> <title>Tortoise and Hare Algorithm (Linked List cycle detection)</title> <description>&lt;h1&gt;Floyd&#39;s Linked List Cycle Finding Algorithm&lt;/h1&gt; &lt;p&gt;Given a linked list where the starting point of that linked list is denoted by &lt;strong&gt;head&lt;/strong&gt;, and there may or may ...&lt;/p&gt;</description> <link>https://cp-algorithms.com/others/tortoise_and_hare.html</link> <pubDate>Tue, 10 Mar 2026 23:59:30 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/others/tortoise_and_hare.html</guid> </item> <item> <title>Divide and Conquer DP</title> <description>&lt;h1&gt;Divide and Conquer DP&lt;/h1&gt; &lt;p&gt;Divide and Conquer is a dynamic programming optimization.&lt;/p&gt; &lt;h3&gt;Preconditions&lt;/h3&gt; &lt;p&gt;Some dynamic programming problems have a recurrence of ...&lt;/p&gt;</description> <link>https://cp-algorithms.com/dynamic_programming/divide-and-conquer-dp.html</link> <pubDate>Thu, 26 Feb 2026 01:27:05 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/dynamic_programming/divide-and-conquer-dp.html</guid> </item> <item> <title>Basic Geometry</title> <description>&lt;h1&gt;Basic Geometry&lt;/h1&gt; &lt;p&gt;In this article we will consider basic operations on points in Euclidean space which maintains the foundation of the whole analytical geome...&lt;/p&gt;</description> <link>https://cp-algorithms.com/geometry/basic-geometry.html</link> <pubDate>Mon, 16 Feb 2026 20:12:36 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/geometry/basic-geometry.html</guid> </item> <item> <title>Binary Exponentiation</title> <description>&lt;h1&gt;Binary Exponentiation&lt;/h1&gt; &lt;p&gt;Binary exponentiation (also known as exponentiation by squaring) is a trick which allows to calculate $a^n$ using only $O(\log n)$ m...&lt;/p&gt;</description> <link>https://cp-algorithms.com/algebra/binary-exp.html</link> <pubDate>Thu, 05 Feb 2026 08:07:35 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/algebra/binary-exp.html</guid> </item> <item> <title>Maximum flow - Ford-Fulkerson and Edmonds-Karp</title> <description>&lt;h1&gt;Maximum flow - Ford-Fulkerson and Edmonds-Karp&lt;/h1&gt; &lt;p&gt;The Edmonds-Karp algorithm is an implementation of the Ford-Fulkerson method for computing a maximal flow i...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/edmonds_karp.html</link> <pubDate>Wed, 21 Jan 2026 07:42:17 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/edmonds_karp.html</guid> </item> <item> <title>Randomized Heap</title> <description>&lt;h1&gt;Randomized Heap&lt;/h1&gt; &lt;p&gt;A randomized heap is a heap that, through using randomization, allows to perform all operations in expected logarithmic time.&lt;/p&gt; &lt;p&gt;A **min hea...&lt;/p&gt;</description> <link>https://cp-algorithms.com/data_structures/randomized_heap.html</link> <pubDate>Fri, 16 Jan 2026 19:22:03 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/data_structures/randomized_heap.html</guid> </item> <item> <title>Finding Power of Factorial Divisor</title> <description>&lt;h1&gt;Finding Power of Factorial Divisor&lt;/h1&gt; &lt;p&gt;You are given two numbers $n$ and $k$. Find the largest integer $x$ such that $k^x$ divides $n!$.&lt;/p&gt; &lt;h2&gt;Prime $k$ {data-t...&lt;/h2&gt;</description> <link>https://cp-algorithms.com/algebra/factorial-divisors.html</link> <pubDate>Mon, 29 Dec 2025 17:12:09 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/algebra/factorial-divisors.html</guid> </item> <item> <title>Finding Connected Components</title> <description>&lt;h1&gt;Search for connected components in a graph&lt;/h1&gt; &lt;p&gt;Given an undirected graph $G$ with $n$ nodes and $m$ edges. We are required to find in it all the connected com...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/search-for-connected-components.html</link> <pubDate>Sun, 28 Dec 2025 14:42:11 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/search-for-connected-components.html</guid> </item> <item> <title>Euler&#39;s totient function</title> <description>&lt;h1&gt;Euler&#39;s totient function&lt;/h1&gt; &lt;p&gt;Euler&#39;s totient function, also known as &lt;strong&gt;phi-function&lt;/strong&gt; $\phi (n)$, counts the number of integers between 1 and $n$ inclusive, w...&lt;/p&gt;</description> <link>https://cp-algorithms.com/algebra/phi-function.html</link> <pubDate>Sun, 28 Dec 2025 13:07:53 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/algebra/phi-function.html</guid> </item> <item> <title>Convex hull construction</title> <description>&lt;h1&gt;Convex Hull construction&lt;/h1&gt; &lt;p&gt;In this article we will discuss the problem of constructing a convex hull from a set of points.&lt;/p&gt; &lt;p&gt;Consider $N$ points given on a p...&lt;/p&gt;</description> <link>https://cp-algorithms.com/geometry/convex-hull.html</link> <pubDate>Fri, 26 Dec 2025 10:25:54 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/geometry/convex-hull.html</guid> </item> <item> <title>Strongly Connected Components and Condensation Graph</title> <description>&lt;h1&gt;Strongly connected components and the condensation graph&lt;/h1&gt; &lt;h2&gt;Definitions&lt;/h2&gt; &lt;p&gt;Let $G=(V,E)$ be a directed graph with vertices $V$ and edges $E \subseteq V \time...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/strongly-connected-components.html</link> <pubDate>Fri, 26 Dec 2025 00:31:37 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/strongly-connected-components.html</guid> </item> <item> <title>Segment Tree</title> <description>&lt;h1&gt;Segment Tree&lt;/h1&gt; &lt;p&gt;A Segment Tree is a data structure that stores information about array intervals as a tree. This allows answering range queries over an array...&lt;/p&gt;</description> <link>https://cp-algorithms.com/data_structures/segment_tree.html</link> <pubDate>Fri, 19 Dec 2025 07:16:42 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/data_structures/segment_tree.html</guid> </item> <item> <title>Disjoint Set Union</title> <description>&lt;h1&gt;Disjoint Set Union&lt;/h1&gt; &lt;p&gt;This article discusses the data structure &lt;strong&gt;Disjoint Set Union&lt;/strong&gt; or &lt;strong&gt;DSU&lt;/strong&gt;. Often it is also called &lt;strong&gt;Union Find&lt;/strong&gt; because of its two ...&lt;/p&gt;</description> <link>https://cp-algorithms.com/data_structures/disjoint_set_union.html</link> <pubDate>Mon, 15 Dec 2025 01:10:23 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/data_structures/disjoint_set_union.html</guid> </item> <item> <title>Gauss &amp; System of Linear Equations</title> <description>&lt;h1&gt;Gauss method for solving system of linear equations&lt;/h1&gt; &lt;p&gt;Given a system of $n$ linear algebraic equations (SLAE) with $m$ unknowns. You are asked to solve the ...&lt;/p&gt;</description> <link>https://cp-algorithms.com/linear_algebra/linear-system-gauss.html</link> <pubDate>Wed, 10 Dec 2025 11:02:10 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/linear_algebra/linear-system-gauss.html</guid> </item> <item> <title>Finding Bridges Online</title> <description>&lt;h1&gt;Finding Bridges Online&lt;/h1&gt; &lt;p&gt;We are given an undirected graph. A bridge is an edge whose removal makes the graph disconnected (or, more precisely, increases the...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/bridge-searching-online.html</link> <pubDate>Sun, 23 Nov 2025 17:50:05 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/bridge-searching-online.html</guid> </item> <item> <title>Heavy-light decomposition</title> <description>&lt;h1&gt;Heavy-light decomposition&lt;/h1&gt; &lt;p&gt;&lt;strong&gt;Heavy-light decomposition&lt;/strong&gt; is a fairly general technique that allows us to effectively solve many problems that come down to ...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/hld.html</link> <pubDate>Wed, 19 Nov 2025 12:44:51 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/hld.html</guid> </item> <item> <title>2-SAT</title> <description>&lt;h1&gt;2-SAT&lt;/h1&gt; &lt;p&gt;SAT (Boolean satisfiability problem) is the problem of assigning Boolean values to variables to satisfy a given Boolean formula. The Boolean formul...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/2SAT.html</link> <pubDate>Thu, 06 Nov 2025 12:07:11 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/2SAT.html</guid> </item> <item> <title>Eulerian Path</title> <description>&lt;h1&gt;Finding the Eulerian path in $O(M)$&lt;/h1&gt; &lt;p&gt;A Eulerian path is a path in a graph that passes through all of its edges exactly once. A Eulerian cycle is a Eulerian...&lt;/p&gt;</description> <link>https://cp-algorithms.com/graph/euler_path.html</link> <pubDate>Mon, 03 Nov 2025 22:39:11 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/graph/euler_path.html</guid> </item> <item> <title>Garner&#39;s Algorithm</title> <description>&lt;h1&gt;Garner&#39;s algorithm&lt;/h1&gt; &lt;p&gt;A consequence of the &lt;a href=&#34;chinese-remainder-theorem.md&#34;&gt;Chinese Remainder Theorem&lt;/a&gt; is, that we can represent big numbers using an array of ...&lt;/p&gt;</description> <link>https://cp-algorithms.com/algebra/garners-algorithm.html</link> <pubDate>Wed, 29 Oct 2025 17:23:37 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/algebra/garners-algorithm.html</guid> </item> <item> <title>Linear Diophantine Equations</title> <description>&lt;h1&gt;Linear Diophantine Equation&lt;/h1&gt; &lt;p&gt;A Linear Diophantine Equation (in two variables) is an equation of the general form:&lt;/p&gt; &lt;p&gt;$$ax + by = c$$&lt;/p&gt; &lt;p&gt;where $a$, $b$, $c$ are...&lt;/p&gt;</description> <link>https://cp-algorithms.com/algebra/linear-diophantine-equation.html</link> <pubDate>Wed, 29 Oct 2025 17:22:34 +0000</pubDate> <source url="https://cp-algorithms.com/feed_rss_updated.xml">Algorithms for Competitive Programming</source><guid isPermaLink="true">https://cp-algorithms.com/algebra/linear-diophantine-equation.html</guid> </item> </channel> </rss>