usaco.org/index.php?page=viewproblem2&cpid=…, cpids 915–926).
Round metadata
| Contest | USACO 2019 February |
|---|---|
| Window | Roughly Feb 22–25, 2019 (4-day window, single 4-hour personal timer) |
| Length per division | 4 hours (Dec/Jan/Feb format; US Open is the 5-hour round) |
| Problems per division | 3 |
| Total problems | 12 (Bronze 1–3, Silver 1–3, Gold 1–3, Platinum 1–3) |
| Scoring | IOI-style partial credit, 1000 points per problem, 3000 max per division |
| Allowed languages | C, C++11, C++17, Java, Python 2.7, Python 3.6 (C++17 is the default for serious climbers) |
| Promotion cutoffs | Set per-contest by USACO; check the results page for exact thresholds. |
The contest at a glance
Bronze · 3 problems
1. Sleepy Cow Herding — three cows on a number line; only endpoint cows may move, into a non-endpoint slot. Find min/max moves to reach 3 consecutive positions.
2. The Great Revegetation — assign one of 4 grass types to N pastures so every cow's two favorites differ; output the lexicographically smallest assignment (greedy).
3. Measuring Traffic — N sensors along a highway with on/off ramps and main-segment ranges; compute tightest possible inflow/outflow ranges (two-pass interval intersection).
Silver · 3 problems
1. Sleepy Cow Herding — generalize Bronze P1 to N cows: min moves via sliding window over sorted positions, max via gap arithmetic.
2. Painting the Barn — N axis-aligned rectangles on a 200×200 grid; total area covered by exactly K coats (2D difference array).
3. The Great Revegetation — only 2 grass types now, with 'S' (same) and 'D' (different) constraints; count valid assignments = 2#components with a 2-coloring feasibility check.
Gold · 3 problems
1. Cow Land — tree with node values, support point update and path XOR query (Euler tour + BIT on XOR).
2. Dishwashing — Bessie pushes plates onto monotone soapy stacks (a "patience sorting" structure); find longest prefix whose clean output is sorted.
3. Painting the Barn — Silver P2 plus: paint up to two extra disjoint rectangles to maximize area at exactly K coats (200×200 prefix sums + best-rectangle DP).
Platinum · 3 problems
1. Cow Dating — pick a contiguous interval of independent Bernoulli trials to maximize P(exactly one success); two-pointer on the unimodal expected-successes function.
2. Moorio Kart — forest of K farms (components with ≥2 nodes); count length-≥Y loops formed by stitching all K farms via K extra edges of length X; meet-in-the-middle DP.
3. Mowing Mischief — for each flower in the longest-antichain LIS layer, minimize the max-area rectangle pair; LIS + divide-&-conquer DP optimization.
How to use this set
- Pick your division. Open the full division page and read the three statements before writing any code.
- Solve P1 first, P2 if time, P3 only if you're cruising. February problem 1s are usually the cheapest points.
- Time-box. 4 hours total. Don't spend more than ~90 minutes on a single problem without a working subtask submission.
- Compare to the reference C++. Each problem on the division page has a ~30–50 line reference solution. If yours is much longer, ask why.
- Verify with the editorial. Official editorials are linked from each problem page on usaco.org.