Past problems I'm working through
This page tracks USACO past problems I'm studying, in the order I'm getting to them. A linked row means I've solved or read it and written up what I learned. An unlinked row is on my queue.
Canonical source is usaco.org. Always read problem statements from the official site
— I might paraphrase or misremember details here. Start at
usaco.org/index.php?page=contests
for the contest archive. The community-maintained
USACO Guide has editorials for almost everything.
How I'm using this list. Find one problem at my current level, open the official PDF,
give it an honest 60 minutes, then come back and write what I learned — even if I didn't fully solve it.
Then read the editorial. The gap between my idea and the editorial is the actual lesson.
Write-ups I've finished
Each link below is my own notes on the problem. Problem statements and titles are paraphrased — confirm details on usaco.org before relying on them.
| Season · Round | Division | My write-up |
|---|---|---|
| 2024 December | Bronze | Bronze problem walkthrough |
| 2024 December | Silver | Silver problem walkthrough |
| 2024 December | Gold | Gold problem walkthrough |
My queue
Recent contest rounds I want to work through next. I haven't done these yet, so there are no notes here — open the official statements from usaco.org.
- 2025 season — December, January, February, US Open (all divisions I'm eligible for)
- 2024 January, February, US Open — Bronze and Silver
- Older problems I find recommended in USACO Guide's curated lists
When I finish a write-up I'll add a row to the table above. If you're reading this and want to nudge me toward a specific problem, the GitHub repo for this site is the place to file an issue.
How a problem study session looks for me
- Read the official statement twice. The second pass, I write the input/output format and constraints in my own words.
- Identify the constraint bracket. n ≤ 20? n ≤ 10⁵? That alone narrows the algorithm family.
- Brainstorm 1–2 ideas on paper. No editor yet.
- Code my best idea. Test on samples, then a hand-crafted edge case.
- If WA/TLE, debug with prints or a brute checker. No random tweaks.
- Once accepted (or after ~60 min stuck), I read the editorial. Note what they did differently.
- Re-implement the editorial's approach without looking. That's where the learning sticks.
- Write it up here — explaining a solution forces me to actually understand it, and Future Me will thank Present Me.