This course is for students who have a working knowledge of USACO (USA Computing Olympiad) Silver division algorithms and have taken [USACO SILVER] (or equivalent). Students do additional practice and discussion on more advanced Silver problems in a guided group environment. This course spends more time on practice and discussion than lectures and introductions. It also tends towards more difficult problems than the first Silver-level class. This kind of open-ended work teaches students how to get past sticking points, clarify lingering questions about underlying concepts, and work through high-complexity problems. Students may guide some of the discussion by bringing up problems or topics they'd like to focus on. A consistent practice routine and "don't give up, try out ideas and work through the difficulties" attitude are essential for success at USACO. Most [USACO SILVER] students take this class next to make sure they are developing these good habits.
Current contest placement in Silver division. Completed [USACO SILVER] or equivalent. [CORE 6a] highly recommended to deepen general algorithmic skills beforehand. [CORE 6b] also highly recommended as complementary course before, during, or immediately after [USACO SILVER STUDY].
USACO format, Arrays warm-up
Simulation (Cycle Detection) - blink
Advanced use of Data Structures
Reframing and Linear Sweep
2d Array Problems
Prefix sum review, implementation practice
2d movement, implementation practice
Homework wrap-up, Recursive analysis
Grand Finale - Farmer John Has No Large Brown Cow