Know the rules
before you compete
These are the full contest rules for the USA Computing Olympiad (USACO) — who may enter, how a contest is structured and scored, the academic-integrity policy, the technical limits your program must meet, and the four rule changes introduced for the 2025–26 season.
Independent guide — rules summarised from the official contest instructions at usaco.org · Last reviewed 15 July 2026.
| Problems | 3–4 per contest |
| Window | 4–5h · your timer |
| Languages | C · C++ · Java · Python |
| Max score | 1000 |
| Memory | ~256 MB |
| Program | < 100,000 bytes |
| Compile | ≤ 30 s |
| Fee | FREE |
Eligibility
Who can enter USACO, and what does it cost?
Anyone worldwide may enter the USA Computing Olympiad’s online contests and use its training, and there is never any fee. Only pre-college students in the USA are eligible to be selected as training-camp finalists or for the USA IOI and EGOI teams. Every new participant starts in the Bronze division.
Participation is genuinely open: students from any country and any grade can compete on the same problems, for free, using a single usaco.org account. USACO asks that you use the same login ID for every contest so it can track your progress, and that your account carries valid information — a real name, graduation year and country. Scoring particularly well promotes you to the next division for future contests; the criteria vary per contest, because every contest is different.
Eligibility for the selection pathway is narrower. Only pre-college students in the USA can be invited as finalists to the training camp or contend for the four-person USA teams at the International Olympiad in Informatics (IOI) and the European Girls’ Olympiad in Informatics (EGOI). International competitors are welcome in every online round but are not part of that selection. For how to open an account, see the registration walkthrough; for the full ladder, see the competition guide.
Format & Scoring
How is a USACO contest structured and scored?
A USACO contest has typically three to four algorithmic problems, solved in C, C++, Java or Python during a 4–5 hour personal timer that you start anywhere inside a multi-day window. Each contest is scored out of 1000 points — divided among the problems, about 333.33 each in a typical three-problem contest, across roughly ten test cases — with instant per-test-case feedback.
Problems & timing
Typically 3–4 problems in one 4–5 hour block, chosen from a multi-day window. Time limits are usually about 2 seconds per test case for C/C++ and 4 seconds for Java/Python, though a contest or problem may vary them.
Scoring
1000 points per contest, divided among the problems — about 333.33 points each in a typical three-problem contest — with about ten test cases per problem. Your score is the credit you earn from the cases your program solves within the time and memory limits.
Feedback & submissions
Each submission is judged case by case with a coloured box — green for correct, red for incorrect (X, T, !, E or M). You may resubmit without penalty while your timer runs, and only the last submission per problem is graded.
The first test case is normally the sample from the problem statement, and you must solve it before you receive feedback on the remaining hidden cases. A perfect 1000 earns an in-contest promotion; otherwise promotions are granted after the contest to everyone above that contest’s threshold. Full promotion mechanics live on the competition guide, and every season’s numbers on the cutoff-scores page.
The official contest language is English. Translated problem statements are often offered for international competitors, but if translations disagree, the English version is the authoritative one.
SUBMISSION / 03
read(input);
answer = solve(data);
print(answer);
Academic Integrity
What are the academic-integrity rules?
USACO requires you to work alone: generative AI, pre-written templates, and consulting anyone but the contest director are prohibited, and USA students may not mask their IP address with a VPN. The contest is designed to mirror the IOI environment, where all code is written from scratch. Violations carry a lifetime ban.
Work by yourself
Compete individually, not in a team. Do not consult anyone but the contest director about the problems, and do not share code or technical information about a contest while it is still running.
No AI, no templates
Generative AI tools such as Copilot or ChatGPT are prohibited, as is any pre-written code or template. The only references you may consult are those describing your language’s syntax, library functions and input/output.
Play it straight
USA students must not use a VPN to obscure their IP address. Use one login ID with valid details, submit only through the usaco.org interface, and never run code that behaves maliciously toward the grading machine.
The consequence is deliberately absolute: anyone who violates these policies is banned for life from all USACO activities, with no second chances. USACO adds that it often follows up on cheating by contacting a student’s teachers or school principal — expulsions have resulted — and that a disqualification may be disclosed if a university or program later inquires about a competitor.
Technical Details
What are the technical limits and language versions?
Your program must be under 100,000 bytes, compile within 30 seconds, and run inside about 256 MB, and it must be deterministic. USACO compiles C and C++ with gcc/g++ 7.5.0 at -O2, runs Java on OpenJDK 11.0.10, and offers Python 2.7.17 and 3.6.9 — you choose the version when you submit.
Programs must be deterministic — they must produce identical output every run on identical input, so random-number solutions need a fixed seed. Programs that are essentially print statements, or that reverse-engineer hidden cases, may be disqualified, and code must not pause for keypresses. C++ is the recommended language for higher divisions because it is the only one supported at the IOI.
| Language | Key notes | Compiler / runtime |
|---|---|---|
| C / C++ | -O2 · -lm · std=c++11 or c++17 · int is 32-bit, use long long for 64-bit | gcc / g++ 7.5.0 |
| Java | single file · one public class named after the file · no package line | OpenJDK 11.0.10 |
| Python | select the version at submit · slower, may miss higher-division time limits | 2.7.17 / 3.6.9 |
Technical limits and language versions from the official contest instructions at usaco.org · Last reviewed 15 July 2026.
The US Open
What changes for the proctored US Open?
For 2025–26 the season ends with a proctored, invitational US Open on 28 March 2026. Unlike the online contests, it is taken in person at official designated sites under on-site supervision, and its results are the primary basis for selecting training-camp finalists and the EGOI team.
In earlier seasons every USACO round ran online. The US Open now works differently: top USA competitors from the three online contests are invited to a supervised final, held at designated sites rather than from home. USACO calls 2025–26 a transitional year as it gains experience running this proctored championship, and notes the familiar Bronze–Silver–Gold–Platinum structure stayed in place for stability.
Because the online rounds now feed an in-person final, a start time and a certified score matter more than they used to for Gold and Platinum competitors — the four rule changes below spell out exactly how. The proctored format is the biggest of those changes.
PROCTOR.PROTOCOL
// identity, location and contest window verified
2026 Updates
What changed for the 2025–26 season?
USACO made four adjustments for 2025–26, framed as a transitional year. The headline change is a proctored, in-person US Open; the others tie certified scores to a fixed start time, link camp invitations to certified scores, and reset Platinum competitors to Gold at the start of the season.
US Open moves to in-person proctoring
In past seasons every USACO contest was online. For 2025–26 the closing US Open is proctored in person: it is an invitational final for top USA competitors from the three online contests, who must attend an official designated site and complete the contest under on-site supervision on 28 March 2026.
Severity: CriticalGold and Platinum need a certified start time
Bronze and Silver are unaffected. To earn a certified score, Gold and Platinum contestants must begin Saturday at 12:00 ET, when those divisions’ problems are released — the Chinese sister site describes a 15-minute start window (12:00–12:15 ET). A start outside that window is marked non-certified and cannot count toward promotion or US Open selection.
Severity: HighCamp invitations tie to certified scores
Selection now weighs how many certified scores you earn. The Chinese sister site reports that roughly two certified scores support a US Open invitation and three make qualification more secure, where a certified score means finishing inside the required window and above a score threshold. This mainly affects Gold and Platinum contestants.
Severity: HighPlatinum competitors reset to Gold
At the start of the 2025–26 season, Platinum competitors were reset to the Gold division — in USACO’s words, “a practice we may continue in the future.” Divisions now behave more like a yearly ranking than a lifetime badge, so contestants re-establish their level each season.
Severity: HighFAQ
USACO rules — frequently asked questions
Short, self-contained answers to the rules questions students and parents ask most. Every answer traces to the official contest instructions at usaco.org, with the 2026 changes cross-checked against the Chinese sister site.
Is generative AI allowed in USACO contests?
No. USACO prohibits generative AI tools such as Copilot or ChatGPT, along with pre-written templates and consulting anyone but the contest director. The environment mirrors the International Olympiad in Informatics, where all code is written from scratch; the only references allowed describe your language’s syntax and library functions. Violations carry a lifetime ban.
Can I resubmit my USACO solution, and which one counts?
Yes. You may resubmit as often as you like while your personal timer runs, at no penalty, and only your last submission for each problem is graded. Once your 4–5 hour timer expires, no further submissions are accepted, so a bug found late can still be fixed by resubmitting in time.
What programming language versions does USACO use?
USACO compiles C and C++ with gcc/g++ 7.5.0 using -O2, runs Java on OpenJDK 11.0.10 (one file, one public class named after the file, no package line), and offers Python 2.7.17 and 3.6.9. C++ is the recommended language because it is the only one supported at the International Olympiad in Informatics.
What happens if I break a USACO rule?
Any violation of the integrity policy results in a lifetime ban from all USACO activities, with no second chances. USACO notes it often follows up by contacting a student’s teachers or principal, that expulsions have resulted, and that a disqualification may be disclosed if a university later inquires about a competitor.
What is a certified score in USACO?
A certified score is a Gold or Platinum result that counts toward promotion and US Open selection. To earn one for 2025–26 you must start Saturday at 12:00 ET, when those divisions’ problems are released; the Chinese sister site describes a 15-minute start window. Bronze and Silver contestants are not affected.
Is the USACO US Open taken online?
No longer. For 2025–26 the US Open is a proctored, invitational contest taken in person at official designated sites on 28 March 2026, a change from the previously all-online season. Its results are the primary basis for selecting training-camp finalists and the USA EGOI team.