USACO 2026 - Milk Buckets
Xem PDFBessie đã thách đấu Farmer John trong một trò chơi với những xô sữa! Có \(N\) \((2\leq N\leq 2\cdot 10^5)\) xô sữa xếp thành một hàng. Xô thứ \(i\) tính từ bên trái ban đầu chứa \(a_i\) \((0\leq a_i\leq 10^9)\) gallon sữa.
Trò chơi gồm hai giai đoạn:
Giai đoạn 1: Farmer John có thể đổi chỗ hai xô kề nhau bất kỳ. Ông có thể thực hiện bao nhiêu lần đổi chỗ tùy thích, nhưng mỗi lần tốn \(1\) đồng xu.
Giai đoạn 2: Sau khi đổi chỗ, Farmer John thực hiện thao tác sau cho đến khi chỉ còn lại một xô: Chọn hai xô kề nhau có lượng sữa là \(a_i\) và \(a_{i+1}\), rồi thay cả hai xô bằng một xô đặt tại vị trí của chúng và chứa \(\frac{a_i+a_{i+1}}2\) gallon sữa.
Hãy xác định số đồng xu ít nhất Farmer John phải dùng trong giai đoạn đổi chỗ để tối đa hóa lượng sữa trong xô cuối cùng sau khi hoàn tất mọi phép gộp.
Dữ liệu vào
Dòng đầu tiên chứa một số nguyên \(T\) \((1\leq T\leq 100)\): số lượng bộ test độc lập.
Sau đó, với mỗi bộ test, dòng đầu tiên chứa một số nguyên \(N\): số lượng xô sữa. Dòng thứ hai chứa \(N\) số nguyên \(a_1,a_2,\dots,a_N\), cách nhau bởi dấu cách: số gallon sữa trong mỗi xô.
Đảm bảo tổng \(N\) trên tất cả các bộ test không vượt quá \(5\cdot 10^5\).
Dữ liệu ra
Với mỗi bộ test, in ra số đồng xu ít nhất Farmer John phải dùng để tối đa hóa lượng sữa trong xô cuối cùng.
Ví dụ
Ví dụ 1
Input
2
3
0 0 1
3
0 1 0
Output
0
1
Note
Ở bộ test đầu tiên, ta không cần đổi chỗ xô sữa nào trong giai đoạn đầu. Trong giai đoạn thứ hai, Farmer John có thể gộp hai xô đầu tiên rồi gộp hai xô duy nhất còn lại để thu được lượng sữa cuối cùng là \(0.5\). Có thể chứng minh rằng lượng sữa cuối cùng này là lớn nhất.
Ở bộ test thứ hai, ta phải thực hiện đúng một lần đổi chỗ hai xô đầu tiên trong giai đoạn đầu để thu được lượng sữa cuối cùng là \(0.5\) trong giai đoạn thứ hai. Có thể chứng minh rằng nếu không đổi chỗ trong giai đoạn đầu thì không thể thu được lượng sữa cuối cùng là \(0.5\).
Ví dụ 2
Input
4
4
9 4 9 2
6
0 0 2 0 0 0
3
2 0 1
9
3 3 3 10 3 2 13 14 13
Output
1
2
0
3
Note
Ở bộ test đầu tiên, Farmer John có thể đổi chỗ xô thứ hai và xô thứ ba trong giai đoạn đầu. Sau đó, trong giai đoạn thứ hai, Farmer John có thể thực hiện như sau:
- \([9,9,4,2]\) \(\rightarrow\) gộp xô thứ ba và xô thứ tư \(\rightarrow\)
- \([9,9,3]\) \(\rightarrow\) gộp xô thứ hai và xô thứ ba \(\rightarrow\)
- \([9,6]\) \(\rightarrow\) gộp xô thứ nhất và xô thứ hai \(\rightarrow\)
- \([7.5]\)
Lượng sữa cuối cùng là \(7.5\), đây là giá trị lớn nhất có thể. Có thể chứng minh rằng ngay cả khi đổi chỗ thêm, lượng sữa cuối cùng cũng không thể vượt quá \(7.5\), và nếu đổi chỗ ít hơn thì lượng sữa cuối cùng không thể đạt \(7.5\).
Phân nhóm
- Dữ liệu vào 3–4: \(a_i\leq 1\) và \(N\leq 2000\) (tổng \(N\leq 5000\)).
- Dữ liệu vào 5–6: \(a_i\leq 1\).
- Dữ liệu vào 7–9: \(N\leq 2000\) (tổng \(N\leq 5000\)).
- Dữ liệu vào 10–14: Không có ràng buộc bổ sung.
Nguồn
USACO 2026 Contest 1, Gold Division — “Milk Buckets”. Tác giả đề: Charlie Yang. https://usaco.org/index.php?page=viewproblem2&cpid=1546
Kỳ thi:
- USACO 2026 - Kỳ thi 1 - Hạng Vàng (9 Tháng 1., 2026)
Bình luận