USACO is run by the USA Computing Olympiad and is the most credible pre-college algorithmic programming competition in the United States, as well as the single selection path to the US team for the International Olympiad in Informatics. A season usually runs from winter through spring with three online contests plus a proctored US Open.
Everything happens online: within each contest window a student chooses their own contiguous four-to-five-hour block, solves three or four problems, and submits C, C++, Java or Python code that is auto-judged on hidden test data. Four divisions create a clear difficulty ladder. Bronze rewards careful brute force, simulation and basic data structures.
Silver adds sorting, binary search, prefix sums, union-find and elementary graph traversal. Gold demands dynamic programming, shortest paths and tree algorithms. Platinum reaches advanced data structures, heavy DP, number theory and game theory. A perfect score promotes a student mid-contest, and promotions generally persist across seasons, so progress compounds year over year.
As a pathway, younger students can build computational thinking through Bebras, learn contest mechanics and number-system fundamentals through ACSL, then move to USACO in high school alongside AP Computer Science A. The strongest Platinum competitors are invited to the spring training camp and can earn a place on the US IOI team.




