The third contest of the 2024-2025 USACO season will run from February 21st to February 24th. Good luck to everyone! Please wait until the contest is over for everyone before discussing anything contest-related (including but not limited to your scores or anything about the problems).
There are some new rules regarding the gold division of USACO, please refer to the website regarding the updates, especially if you are trying to promote into platinum.
For those unfamiliar with the USACO contest format, please refer to the contest instructions and rules. We provide a short FAQ but folks should read all the rules carefully.
I have a question about the contest. Where do I ask it?
Email the contest director via the instructions above. Do not post anything publicly about the questions (including but not limited to your scores, how you felt about the problems, any content of the problems, etc) until after the contest is over for everyone. Do not DM me or anyone else affiliated with USACO, only the contest director can assist you. The contest director does not monitor Codeforces, this blog post is merely a courtesy to inform other people of the contest.
When can I enter the contest?
For bronze and silver, the contest will open on February 21st. For gold and platinum, the contest opens at 12pm ET on Saturday, and you must start the contest between 12pm and 12:15pm ET on Saturday to get a certified score.
If I submit multiple programs, which one gets evaluated?
Only the last submission will be evaluated for official scoring purposes.
Can I use prewritten code / templates?
No.
Can I use AI tools during the contest including but not limited to ChatGPT and Copilot?
No.
Am I allowed to use outside resources during the contest?
You may only refer to language documentation.
Can I solve problems in Rust?
No, the only languages supported are C, C++, Java, and Python. Consult the instructions for language-specific technical details.
Will Rust support be added?
Probably not. Petition IOI to add Rust support first.








.
The contest window is over, so as usual, here are my written and video solutions for Bronze and Silver.
Video playlist
Bronze: Problem 1, Problem 2, Problem 3
Silver: Problem 1, Problem 2, Problem 3
Codes: here
This is a very busy time of the year so I will probably get back to the Gold videos later in the year.
here's my solutions for gold.
Problem 1: The second subtask guarantees that the graph will form a DAG, do dp on it. I also did some dumb heuristic on degrees and managed to get aroud half points combining these two solutions.
Note: Subtask 3 can be solved by noticing that they will all go into cycles. Fullsolve combines subtask 1 and subtask 3, as the graph will be cycles and trees. I could not implement this in the contest.
Problem 2: If n < 1e5 use a difference array. Then binary search for first place such that you can no longer choose all ones. You can then find the value, using a fenwick tree or similar. For n < 1e9 do coord compression. Implementation is difficult and messy.
Problem 3: The graph must be a connected multipartite graph. Calculate f[nodes], the cost to turn a set of nodes into an independent set, or a part in the multipartite graph. This is equal to len(nodes) choose 2 — (2*edges between). 2 comes from: 1. having to remove the edge, 2. originally these edges would have helped make the graph connected.
then dp[nodes] = dp[nodes ^ subset] + f[subset]
ans is (amount needed for completely connected) — dp[all nodes]
would greatly appreciate fullsolve code for gold p1
for some reason i cant access my usaco submissions right now so i cant send my code for p1. anyways, is gold usually this implementation heavy? it was my first participation and it kinda sucked
Gold is usually not this implementation heavy but dw you can promote in Open contest in march. I believe in you!
i got 824 pts
orz
orzzzzzzzzzzz
p1 was easiest imo
bro no way
I thought p3 was easiest (I ACed pretty quick)
It's really easy if you make the key observation
p1 is easier if you are too dumb to observe (like me)
Here's my AC code: link