Need help finding the right class? Have a question about how classes work?
USACO Silver Comprehensive TrainingThis course deepens our students’ competitive programming and problem-solving knowledge and gives them the tools they need to succeed in the Silver level of the USA Computing Olympiad. Major focus topics include binary search, data structures (e.g., priority queues), recursion (especially on trees), and graph search algorithms. This material is not only important in competitive programming, but very useful in computer science and programming in general! |
16 weeks DiagnosticsARE YOU READY? |
| 16 weeks ARE YOU READY? |
Schedule
|
STARTING SOON |
||||
|
Wednesday
May 6 - Aug 19 |
7:30 - 9:00 PM ET
May 6 - Aug 19
7:30 - 9:00 PM Eastern 6:30 - 8:00 PM Central 5:30 - 7:00 PM Mountain 4:30 - 6:00 PM Pacific Click here to see more time zones |
Ian Tullis | $595 (~$38/lesson) |
$595
(~$38/lesson)
|
|
Monday
Aug 10 - Dec 7 |
7:30 - 9:00 PM ET
Aug 10 - Dec 7
7:30 - 9:00 PM Eastern 6:30 - 8:00 PM Central 5:30 - 7:00 PM Mountain 4:30 - 6:00 PM Pacific Click here to see more time zones |
Ray Bai | $595 (~$38/lesson) |
$595
(~$38/lesson)
|
|
Friday
Aug 28 - Dec 18 |
7:30 - 9:00 PM ET
Aug 28 - Dec 18
7:30 - 9:00 PM Eastern 6:30 - 8:00 PM Central 5:30 - 7:00 PM Mountain 4:30 - 6:00 PM Pacific Click here to see more time zones |
Ray Bai | $595 (~$38/lesson) |
$595
(~$38/lesson)
|
AoPS Holidays
Who Should Take?
We expect USACO Silver students to have taken our USACO Bronze class, or to already be at the Silver level or close to advancing from the Bronze level (i.e., scoring 500+ in timed contests). If you have not yet competed in USACO, this course is only suitable if you have prior experience in competitive programming and algorithmic problem-solving and you feel comfortable solving USACO Bronze problems from recent years.
Students should also be comfortable coding in at least one of C++, Java, and Python. Although many Silver problems are fully solvable in Python, C++ provides a significant advantage starting at this level, and is all but required for success at the Gold level. Although our course does not include C++ lessons per se, it encourages the use and engagement of C++.
Many contest problems are quite mathematical, so students should have at least a prealgebra level of math experience. Algebra is recommended as a pre- or co-requisite.
Lessons
| 1 | Welcome to Silver |
| 2 | Binary Search I: The Technique |
| 3 | Binary Search II: Advanced Applications |
| 4 | Data Structures I: Stacks, Queues, and Linked Lists |
| 5 | Data Structures II: Deques, Heaps, and Priority Queues |
| 6 | Recursion and Trees I: Permutations, Recursion, and Memoization |
| 7 | Recursion and Trees II: Rooted Binary Trees |
| 8 | Recursion and Trees III: General Trees |
| 9 | Recursion and Trees IV: Recurse, Divide, and Conquer |
| 10 | Graphs I: Depth-First Search and Backtracking |
| 11 | Graphs II: Breadth-First Search and Dijkstra's Algorithm |
| 12 | Graphs III: Directed and Functional Graphs |
| 13 | Bitwise Operations, Strings, and Tries |
| 14 | Ad Hoc Problems |
| 15 | Combinatorics and Number Theory |
| 16 | Miscellaneous Tools |