USACO Preparation
Move up a USACO division with a clear plan: the topics each division tests, practice on past problems and a review after every contest.
- Level:
- USACO Bronze to Platinum
- Exam board:
- USACO Computing Olympiad
- Course code:
- Bronze, Silver, Gold, Platinum
- Format:
- Free self-study lessons + 1:1 mentoring
Free, no-obligation chat · Affordable plans that fit your budget · Start this week
- 1:1 personal attentionOne mentor, one student, at your pace.
- Flexible timingsSessions that fit your week and time zone.
- Affordable plansPlans that fit your budget.
- Practise between sessionsShort problems that build confidence.
About this course
Learn USACO Preparation online
USACO runs online contests through the season in four divisions: Bronze, Silver, Gold and Platinum. A student is promoted by scoring well in a contest, so steady improvement between contests is what counts.
Each division tests a clear set of ideas. Bronze is careful simulation and complete search; Silver adds sorting, binary search, prefix sums and graph traversal; Gold adds dynamic programming, shortest paths and union-find; Platinum adds advanced data structures such as segment trees.
A mentor finds what is stopping promotion, plans practice on past USACO problems for that division, and reviews each contest with your student. Students can also train for free with our coding problems and the DSA sheet.
Who this course is for
- Students starting USACO in Bronze who want a strong first season
- Silver and Gold students who are stuck below the promotion score
- Students aiming for Platinum and the training camp
- Parents who want structured, patient coaching for a student who loves problem solving
Outcomes
What you'll learn
- Estimate the allowed complexity from the input size
- Read and write input and output quickly and safely
- Apply two pointers, sliding window, prefix sums and binary search
- Solve problems with sorting, greedy choices and recursion
- Use graph algorithms: BFS, DFS, shortest paths and union-find
- Build dynamic programming solutions from a recurrence
- Use bit manipulation and basic number theory
- Test with edge cases and find bugs quickly under time pressure
Skills you'll gain
- Complexity estimation
- Fast I/O
- Binary search
- Two pointers
- Sliding window
- Greedy
- Graph algorithms
- Dynamic programming
- Bit manipulation
- Number theory
- Backtracking
- Stress testing
Detailed syllabus
USACO Preparation syllabus
Every module lists its topics and what you will be able to do. Where we have a matching free lesson, it is linked so you can study or revise on your own.
Module 1
Contest basics
How contests work and how to set yourself up.
- Problem statements, constraints and limits
- Fast input and output
- Choosing a language and building a template
- Time limits and memory limits
- Reading a problem twice
- A routine for each problem
By the end of this module you can
- Write fast input handling in your language
- Choose an approach from the constraints
Module 2
Complexity and testing
Knowing whether a solution is fast enough, and whether it is correct.
- Estimating operations from input size
- Common growth rates
- Brute force first, then improve
- Hand-made tests and edge cases
- Stress testing against a slow solution
By the end of this module you can
- Predict whether a solution will pass the time limit
- Find a wrong answer with a stress test
Module 3
Arrays, two pointers and sliding window
Linear-time techniques on sequences.
- Array traversal patterns
- Two pointers on sorted data
- Fixed-size windows
- Variable-size windows
- Counting with hash maps
- Common off-by-one traps
By the end of this module you can
- Turn a quadratic loop into a linear one
- Recognise a window problem from its wording
Module 4
Prefix sums and binary search
Precomputation and halving the search space.
- Prefix sums and range queries
- 2D prefix sums and difference arrays
- Classic binary search
- Lower and upper bound
- Binary search on the answer
- Rotated arrays and peaks
By the end of this module you can
- Answer many range queries quickly
- Apply binary search to an answer, not just an array
Module 5
Sorting, greedy and intervals
Order the data, then make the right local choice.
- Custom sorting and comparators
- Sort then scan
- Greedy choice and exchange argument
- Activity selection and interval scheduling
- Merging intervals
- When greedy fails
By the end of this module you can
- Prove or disprove a simple greedy idea
- Solve interval problems after sorting
Module 6
Recursion and backtracking
Exploring all possibilities and pruning.
- Recursion trees
- Subsets, permutations and combinations
- Pruning the search
- Constraint problems such as N-Queens
- Memoizing repeated work
By the end of this module you can
- Generate all subsets or permutations correctly
- Prune a search to meet the time limit
Module 7
Bit manipulation and number theory
Math tools that appear in many contest problems.
- Binary numbers and bitwise operators
- Bit tricks and masks
- GCD and LCM
- Primes and the sieve
- Modular arithmetic
- Fast exponentiation
By the end of this module you can
- Use bit masks to represent subsets
- Compute modular results without overflow
Module 8
Graph algorithms
Modelling problems as graphs and traversing them.
- Adjacency lists
- BFS and DFS
- Connected components and grids
- Shortest paths: BFS, Dijkstra, Bellman-Ford
- Topological sort
- Union-find
- Minimum spanning tree
By the end of this module you can
- Choose a graph algorithm from the problem statement
- Implement Dijkstra and union-find correctly
Module 9
Dynamic programming
Reusing sub-answers to solve optimisation and counting problems.
- States, transitions and base cases
- 1D and 2D DP
- Knapsack and subset sum
- Longest increasing subsequence
- Interval DP
- Bitmask DP
- DP on trees
By the end of this module you can
- Define a state and a transition for a new problem
- Reduce memory by keeping only the rows you need
Module 10
Strings and advanced data structures
Faster structures for text and range queries.
- Prefix function and KMP
- Rolling hash
- Tries
- Segment trees and lazy propagation
- Fenwick tree
- Heaps and priority queues
By the end of this module you can
- Answer range queries with updates efficiently
- Search text for a pattern in linear time
Module 11
Contest practice and review
Building a routine that makes you faster.
- Virtual contests under a timer
- Upsolving: learning from problems you missed
- Keeping an error log
- Time management in a contest
- Choosing problems at the right level
- Staying calm when stuck
By the end of this module you can
- Run a timed practice contest and review it properly
- Plan your weekly training
Ways to learn
How you can learn USACO Preparation
USACO Preparation mentor, 1:1 online
A mentor who knows this course plans sessions around your goal, explains each idea with fresh examples and checks your understanding. Personal attention, flexible timings in your time zone and affordable plans that fit your budget.
Talk to our teamFree self-study lessons
Short lessons in plain English with examples you run in your browser, quizzes and practice. Learn at your pace, and add a mentor whenever you want help.
How it works
Your learning journey
Four simple steps to start USACO Preparation with a mentor. A real person replies to you; there is no booking system.
Step 1: Talk to us
Message us on WhatsApp or email, or fill in the short form. The first chat is free, with no obligation.
Step 2: Get your plan
We listen to your goal, level and deadlines, then suggest a plan that fits your budget and timings.
Step 3: Learn with your mentor
Online 1:1 sessions with a mentor who knows your course, explains clearly and checks your understanding.
Step 4: Practise & track progress
Keep going between sessions with practice, and watch your confidence grow week by week.
Learn by doing
Projects and practice
Personal contest template
Build a reusable template with fast input, helper functions and a test script, and keep improving it as you practise.
Weekly virtual contest
Run a timed set of problems each week, then write a short review of what you missed and the technique it needed.
Pattern problem set
Collect five solved problems for each major pattern, with the key insight written in one sentence for each.
Stress tester
Write a small script that generates random inputs and compares a fast solution against a slow, simple one to catch wrong answers.
Free practice on MentorNxt
Your progress
What you'll be able to do
Milestones from the start, middle and end of the syllabus.
Write fast input handling in your language
Early on
Generate all subsets or permutations correctly
Halfway
Run a timed practice contest and review it properly
By the end
For parents
Helping your student with USACO Preparation
If you are a parent reading this: contest programming rewards steady, guided practice far more than cramming. A coach helps your student pick the right problems, learn from each contest and keep improving, without burning out.
- A free, no-obligation first chat to understand your student's level and goals (for example, USACO Silver by the next season)
- A weekly training plan: topics to learn, problems to solve and a past contest to review
- Flexible timings in your time zone, around school, exams and family plans
- 1:1 attention from a mentor who explains why a solution works, not only the answer
- Progress you can see: problems solved and topics covered show in the learner dashboard
- Mentors coach and explain; they never take part in a contest or solve contest problems for a student
FAQs
USACO Preparation: frequently asked questions
Which division should my child start in?
How long does it take to move up a division?
Which programming language should we use?
Will the mentor help during a contest?
What is the difference between self-study and 1:1 mentoring?
Free, no-obligation chat
Talk to our team about USACO Preparation
Tell us what you need. Our support team replies within one working day, by email or WhatsApp, whichever you prefer, and arranges your mentor.
Prefer to talk first?
Message the support team directly. We usually reply the same day.
Our mentors teach and explain. They never complete graded work, tests or assessments for students.
Keep going
Related courses
- Coding contests
Competitive Programming
Contest coaching for USACO, olympiads and ICPC: patterns, graphs, DP and timed practice.
Intermediate to advancedSelf-study + mentor - University CS
Data Structures and Algorithms
Complexity, arrays, lists, trees, graphs, sorting, greedy and dynamic programming.
University, year 2 and interview preparationSelf-study + mentor - Exams & school
AP Computer Science A
The four AP CSA units in Java, with free-response and digital exam practice.
High school (grades 10–12)Self-study + mentor - Programming languages
C++ Programming
C++ from basics to memory, classes, the STL and modern C++.
Beginner to advanced1:1 mentoring - Programming languages
Java Programming
Core Java from zero to OOP, collections, streams, files and threads.
Beginner to advancedSelf-study + mentor - Programming languages
Python Programming
Core Python from zero to functions, collections, files, OOP and algorithms.
Beginner to intermediateSelf-study + mentor
Syllabus references
Last reviewed
Ready to start USACO Preparation?
Message us on WhatsApp or email, or fill in the short form. Our team replies with a plan that fits your goal and budget, and you can start this week.
Talk to us about a mentor