Skip to content

Raymond's Learning Path

Everything we have covered, newest lesson first. Each lesson links to the pages that explain it, and to the problem set that practised it.

Timeline

Date Lesson What we covered Read Problem set
10-25 Set 13 wrap-up; brute force over subsets Raymond explains 1027D's three states; Medium Demon Problem easy (push depth forward in topological order) and hard (push size forward, count only popped vertices); choose / skip DFS and for mask in range(1 << n); Petr and a Combination Lock; Python's % on negative numbers Topological Sort
Brute Force over Subsets
Functional Graphs
—
10-18 Functional graphs II; peeling chains (Set 13) Three states on a functional graph (1027D, 884C); Kahn's algorithm on a graph with cycles removes the tails and leaves the cycles: Medium Demon Problem easy and hard, Selling a Menagerie Functional Graphs
Topological Sort
—
10-11 Functional graphs (Set 13) Review of Delivery Dilemma and Robert Hood; in-degree and out-degree; one outgoing edge per node → cycles with tails, permutation → cycles only; Badge, Books Exchange easy (O(n²)) and hard (shared visited list, O(n)); list vs dictionary; idea of 2033E (split every cycle into pieces of length ≤ 2) Functional Graphs
Difference Array
Sorting & Greedy
—
10-04 Greedy homework review (Set 12) Deep Down Below debugged with a hand-made test; The Delivery Dilemma from O(n²) to O(n) (copy() and max() cost O(n)); Robert Hood and Mrs Hood (each job is a range update on start days → difference array); Move Back at a Cost Sorting & Greedy
Difference Array
Complexity & Constraints
—
09-27 Sorting & greedy (Set 12) Stable Groups (sort, fill the cheapest gaps first, 64-bit PyPy for 10^18); Friends and the Restaurant (surplus + two pointers); Deep Down Below (need per cave, binary search on the answer) Sorting & Greedy
Complexity & Constraints
Python for CP
—
09-20 Stress testing; two pointers finale; greedy Set 11 D/E (An impassioned circulation of affection, MEX vs MED); finding a WA on test 6 by stress testing; first lesson on sorting and greedy Stress Testing
Two Pointers & Sliding Window
Sorting & Greedy
11-TwoPointers(review) (0/5)
09-06 Two pointers review Set 11: Cellular Network, They Are Everywhere, Quiz Master Two Pointers & Sliding Window 11-TwoPointers(review) (0/5)
08-30 Templates homework Alternating String; build PrefixSum.py and DifferenceArray.py from memory Prefix Sum
Difference Array
—
08-24 Sums of Segments Prefix sums of prefix sums + binary search editorial; difference array review Prefix Sum
Difference Array
Binary Search
—
07-26 Prefix-sum templates Writing PrefixSum classes, prefix counts on strings (Set 10) Prefix Sum 10-prefixsum (2/9)
07-19 Knapsack 0/1, unbounded and bounded knapsack Knapsack 9-Jun19 (3/3)
07-12 DP recap, LCS, topological sort LCS table and reconstruction, Kahn's algorithm LCS
Topological Sort
—
07-05 DP on graphs and grids EDU DP G Longest Path, H Grid 1 Topological Sort
LCS
—
06-28 DP practice AtCoder EDU DP A–E, Set 8 DP Basics
Knapsack
8-dp-1 (0/3)
06-21 Introduction to DP States and transitions, counting stairs, memoized recursion DP Basics —
06-14 bisect bisect_left / bisect_right for counting in sorted lists Binary Search —
06-07 Difference arrays Range updates, Karen and Coffee, Covered Points Count, Counting Rectangles Difference Array
Prefix Sum
7-Intervals (5/8)
05-31 Homework review, 2D prefix sums Make It Connected review; 2D prefix sum (OJ P1101) Prefix Sum —
05-17 DSU practice Learning Languages, News Distribution with DSU DSU & Kruskal —
05-10 DSU and Kruskal Union-find with path compression and union by size, minimum spanning tree DSU & Kruskal 6-DSU (4/8)
05-03 Dijkstra Heap Dijkstra, shortest path tree (Paths and Trees), roads vs trains (Jzzhu and Cities) Shortest Paths (Dijkstra) —
04-12 BFS and backtracking BFS shortest paths with path recovery, grid BFS, knight moves, 4/8-queens with backtracking BFS
Backtracking
—
03-29 Adjacency lists and sets Adjacency list, Python set and its costs, deleting edges, tree properties, unicyclic graphs Storage & Traversal
Graph Concepts
—
03-22 Graph modelling, trees, diameter Connected graph, degree, tree, leaf, reasoning from the leaves, tree diameter by two searches Graph Concepts
Tree Diameter
—
02-22 Algorithm map and graph theory intro Overview of two pointers / binary search / prefix sums / DP / graphs; DFS and BFS introduced Graph Concepts
DFS (Flood Fill)
5-Graph (10/16)
02-10 Mixed practice Set 4: prefix sums, sorting + binary search, simulation Complexity & Constraints
Prefix Sum
4-Misc (7/10)
01-26 Two pointers Set 3: windows, opposite ends, binary search on the answer (Hamburgers) Two Pointers & Sliding Window 3-TwoPointers (5/6)
01-23 First problem sets Set 1 and Set 2: binary search on the answer, first Codeforces submissions Complexity & Constraints
Binary Search
USACO-Raymond-1 (1/6)
2-BinarySearch (4/6)
01-16 From Bronze to Silver: overview slides Python custom sorting, prefix sums, difference arrays, sliding window, binary search on the answer, DFS flood fill, BFS shortest path Python for CP
Sorting & Greedy
DFS (Flood Fill)
BFS
—

Topics by area

Problem sets

Dates come from submission history.

# Set Period Solved Avg. Rating
1 USACO-Raymond-1 2026-01-23 ~ 2026-01-23 1/6 1100
2 2-BinarySearch 2026-01-24 ~ 2026-01-25 4/6 1133
3 3-TwoPointers 2026-01-26 ~ 2026-02-04 5/6 1283
4 4-Misc 2026-02-10 ~ 2026-02-14 7/10 1070
5 5-Graph 2026-03-05 ~ 2026-05-21 10/16 1619
6 6-DSU 2026-05-15 ~ 2026-05-30 4/8 1588
7 7-Intervals 2026-06-02 ~ 2026-06-23 5/8 1675
8 8-dp-1 2026-06-27 ~ 2026-07-12 0/3 1367
9 9-Jun19 2026-07-21 ~ 2026-07-21 3/3 —
10 10-prefixsum 2026-07-31 ~ 2026-09-06 2/9 1622
11 11-TwoPointers(review) 2026-09-07 ~ 2026-09-12 0/5 1660

11 problem sets, 80 problems, 41 solved.

Credits & licenses

This is a free, non-commercial study resource. Some pages borrow figures, explanations or problem choices from OI Wiki (CC BY-SA 4.0) and USACO Guide (CC BY-NC-SA 4.0). Each page lists exactly what was borrowed, from which module and authors, and what was changed; borrowed parts keep their original license.