Class Description CS401 USACO Silver

USACO Silver

Online Only

Note: Either Python, Java or C++ can be used in class. Class examples and homework solutions will be given in Python, Java and C++.

  • Instructor: Zhang, Ph.D.
  • Weekly homework Time: 7 hours
  • Note: A mid-term and a final test will be given

2026 Summer

USACO Silver Summer

Instructor: Zhang, Ph.D.
Dates: June 14 – August 30
Sunday
4PM – 6PM CT
Prereq: Silver Qualifier
Fee: $899

2026 Spring

USACO Silver Spring

Instructor: Zhang, Ph.D.
Saturday
4PM – 6PM CST
Dates: Feb 7 to May 2
No Class Date: Feb 21
Prereq: Silver Qualifier
Fee: $899

All instructional materials from the camp, including recorded sessions, will remain accessible for an additional three months following the conclusion of the camp. Zoom and Canvas platforms will be utilized for delivery and access to these resources.

Silver (Fall/Spring/Summer)

This class focuses on USACO silver training, covering topics such as computational complexity, common data structures, sorting, and binary search. Students will develop fluency in coding techniques, including prefix and suffix sums, flood fill, tree and graph traversal using BFS and DFS and double indexing. An introduction to dynamic programming is also included.

Prerequisite

  • Silver qualifier

Next Class

  • Though 3 Silver classes (fall, spring, summer) may cover similar topics, different practice problems and homework questions will be used. Students who qualify for USACO Gold will advance to Gold. Others will need to take Silver multiple semesters (fall, spring, summer) until they are promoted to Gold in the official contest.

IDE: We use Eclipse as the IDE (Integrated Development Environment) for Java. Click here to download Eclipse Instructions.

USACO Silver 1

Topics

01.  Computational Complexity
02.  Arrays/vectors/Lists
03.  Stacks, Queues and PriorityQueues
04.  Sets and Maps
05.  Trees and Graphs
06.  Sorting and Searching
07.  Prefix and Suffix Sum/Min/Max
08.  Flood Fill and Breadth First Search
09.  Depth First Search
10.  Double Indexing
11.  Introduction to Dynamic Programming
12.  Summary and quiz

Homework

Weekly homework will be assigned, usually 6-8 problems. We are expecting students to spend 4-6 hours to complete the homework. Both test cases and output will be provided. Solutions to homework problems will be posted every Saturday.

The teacher will spend the first 15 minutes of each class to go over the key takeaways from the homework.

USACO Silver Video

  • Topics: Arrays – traverse elements in rows, columns, and diagonals of 2D arrays
  • Assignment: CowK; Peel onion