USACO 2026 - Balancing the Barns

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2200 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

John Nông Dân có \(N\) (\(1\le N\le 5\cdot 10^4\)) nhà kho nằm dọc theo một con đường. Nhà kho thứ \(i\) chứa \(a_i\) kiện cỏ khô và \(b_i\) bao thức ăn \((0\le a_i,b_i\le 10^9)\).

Bessie phàn nàn về sự bất bình đẳng giữa các nhà kho. Cô định nghĩa "độ mất cân bằng" của trang trại là hiệu giữa lượng cỏ khô lớn nhất trong một nhà kho bất kỳ và lượng thức ăn nhỏ nhất trong một nhà kho bất kỳ. Nói một cách chính thức, độ mất cân bằng là \(\max(a) - \min(b)\).

Để giải quyết mối lo của Bessie, John Nông Dân có thể thực hiện đúng \(K\) (\(1\le K\le 10^{18}\)) lần chuyển đổi. Trong mỗi lần chuyển đổi, ông chọn một nhà kho \(i\), bán một kiện cỏ khô của nhà kho đó và mua một bao thức ăn mới cho chính nhà kho ấy. Lưu ý rằng các lượng trong trang trại có thể âm (ông không ngại mắc nợ). Nói một cách chính thức, lặp lại \(K\) lần: chọn một chỉ số \(i\in [1,N]\), giảm \(a_i\) đi một và tăng \(b_i\) lên một.

Hãy giúp John Nông Dân xác định độ mất cân bằng nhỏ nhất có thể sau khi thực hiện đúng \(K\) lần chuyển đổi.

Dữ liệu vào

Dòng đầu tiên chứa \(T\) (\(1 \leq T \leq 10^3\)), số lượng bộ test độc lập.

Dòng đầu tiên của mỗi bộ test chứa \(N\)\(K\).

Dòng tiếp theo chứa \(a_1\dots a_N\).

Dòng tiếp theo chứa \(b_1\dots b_N\).

Tổng \(N\) trên tất cả các bộ test không vượt quá \(5 \cdot 10^4\).

Dữ liệu ra

Với mỗi bộ test, in ra một số nguyên duy nhất là giá trị nhỏ nhất có thể của \(\max(a) - \min(b)\) sau khi thực hiện \(K\) lần chuyển đổi.

Ví dụ

Ví dụ 1

Input
4
1 10
5
3
2 6
100 96
0 4
3 3
1 1 2
0 0 1
3 3
1 2 2
0 1 1
Output
-18
90
0
0
Note

Trong bộ test đầu tiên, John Nông Dân có thể chuyển đổi \(10\) kiện cỏ khô từ nhà kho \(1\) thành các bao thức ăn. Khi đó \(a = [-5]\)\(b = [13]\). Độ mất cân bằng là \(\max(a) - \min(b) = -5 - 13 = -18\).

Trong bộ test thứ hai, John Nông Dân có thể chuyển đổi \(5\) kiện cỏ khô từ nhà kho \(1\)\(1\) kiện cỏ khô từ nhà kho \(2\). Khi đó \(a = [95, 95]\)\(b = [5, 5]\). Độ mất cân bằng là \(95 - 5 = 90\). Đây là độ mất cân bằng nhỏ nhất mà John Nông Dân có thể đạt được.

Phân nhóm

  • Các test 2–4: \(K\le 500\), tổng \(N\) trên tất cả các bộ test không vượt quá \(500\).
  • Các test 5–8: Tổng \(N\) trên tất cả các bộ test không vượt quá \(500\).
  • Các test 9–13: Không có ràng buộc bổ sung.

Nguồn

USACO 2026 Contest 2, Gold Division — Balancing the Barns. Tác giả: Rohin Garg.
https://usaco.org/index.php?page=viewproblem2&cpid=1569

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: