A free collection of curated, high-quality resources to take you from Bronze to Platinum and beyond.

Trusted by thousands of users.

Thousands of USACO contestants have utilized this Guide to improve their skills.

Registered Users
Github Stars

About This Guide

Not Just Another Resource.

This is more than "just another resource." This is a comprehensive, organized roadmap carefully designed and crafted for USACO contestants – available to everyone, for free.

This guide is not an official syllabus. Topics on this guide reflect past problems, not future problems.

  • Experienced Authors

    This guide is written by top USACO contestants, including two-time IOI winner and USACO Problemsetter Benjamin Qi.

  • Calibrated Difficulty

    This guide is targeted towards all contestants, regardless of their division. You'll find problems suitable for you.

  • Improve Faster

    Stop wasting time learning topics you already know. Skip over easy topics or delve deeper into difficult ones; the choice is yours.

  • Stay Motivated

    Use our progress-tracking tools to track your progress in the Guide and stay motivated.

Unsure how to get started?

Overwhelmed by too many resources?

Looking to take your CP skills to the next level?

This is the guide for you.

Frequently asked questions

What is the USACO?

USACO stands for the USA Computing Olympiad. Check out the USACO FAQ Page for more information.

Is this an official syllabus?

No, USACO does not have an official syllabus. This guide merely lists topics that have historically appeared in USACO contests; it makes no guarantees about the topics in future USACO contests.

How do I report a problem or ask a question?

If you encounter an issue while using the guide (website bug, typo, broken link, unclear explanation, etc), use the "Contact Us" button. Alternatively, email us at

I'm looking for classes, club curriculum...

Check out the Competitive Programming Initiative!

Is this guide for non-USACO competitive programmers?

Of course! While we structure our content around USACO, feel free to use this guide even if you don't do USACO. You will still learn a lot from it!

How can I get help?

If you get stuck, head over to the USACO Forum for help.

How can I contribute?

To learn more about contributing, please visit this page. We appreciate any and all contributions!

Is this open source?

Yes! Check out our Github Repository.

Authors you can trust.

Nathan Wang
Coordinator & Webmaster
Nathan Wang

Nathan Wang is a two-time USACO Finalist and web development enthusiast.

Benjamin Qi
Content Director
Benjamin Qi

Benjamin Qi is a two-time IOI winner, USACO Problemsetter, and part of the MIT Class of 2023.

Michael Cao
Content Manager
Michael Cao

Michael Cao is a USACO Platinum competitor and USACO problemsetter.

Darren Yao
Content Manager
Darren Yao

Darren Yao is a USACO Platinum competitor and author of the textbook "An Introduction to USACO."

Nathan Chen
Content Manager
Nathan Chen

Nathan Chen is a two-time USACO Finalist who competes in both Java and C++ fluently.

Siyong Huang
Content Manager
Siyong Huang

Siyong Huang is a two-time USACO Finalist.

Andi Qu
Content Manager
Andi Qu

Andi Qu is an IOI and IMO bronze medalist.

Andrew Wang
Content Manager
Andrew Wang

Andrew Wang is a USACO competitor who competes in multiple languages fluently.


By the Community, for the Community.

Interested in joining the USACO Guide team? We are recruiting Content Authors to help us improve the USACO Guide! Apply here. If you're in the United States, you can earn volunteer hours too!

Current Content Authors:

© 2021 Competitive Programming Initiative. Powered by Vercel.
No part of this website may be reproduced or commercialized in any manner without prior written permission. Learn More.