TST 2022 - Chia ruộng
Xem dạng PDFMột cánh đồng lúa hình chữ nhật có kích thước chiều dọc là ~L~ và chiều ngang là ~W~ cần được đào ~m~ đường mương khác nhau chạy song song với cạnh chiều ngang nối hai cạnh chiều dọc của cánh đồng nhằm phục vụ hiệu quả cho việc tưới tiêu canh tác. Các đường mương này chia cánh đồng theo chiều dọc thành ~(m+1)~ lớp có diện tích dương. Trong bài toán này, chúng ta coi mỗi đường mương có bề rộng không đáng kể.
Chính quyền địa phương tìm các phân chia cánh đồng lúa cho ~n~ hộ gia đình quản lý canh tác, hộ gia đình thứ ~i~ được chia một thửa ruộng hình chữ nhật con nằm trong một lớp có hai cạnh thuộc đường mương hoặc cạnh chiều ngang của cánh đồng, và có diện tích định trước ~a_i~ sao cho ~\sum{a_i}=L \cdot W~. Gọi ~l_i~ và ~w_i~ lần lượt là kích thước chiều dọc và chiều ngang thửa ruộng của hộ gia đình thứ i, chu vi thửa ruộng là ~p_i = 2 \cdot (l_i + w_i)~. Chính quyền địa phương mong muốn tìm ra phương án phân chia sao cho tổng chu vi tất cả các thửa ruộng con ~\sum{p_i}~ là nhỏ nhất.
Yêu cầu: Cho biết kích thước chiều dọc ~L~ và chiều ngang ~W~ của cánh đồng lúa hình chữ nhật, số lượng mương cần đào và n giá trị diện tích ~a_1, a_2, ..., a_n~. Hãy giúp chính quyền địa phương tìm ra phương án phân chia mong muốn và đưa ra giá trị tổng chu vi nhỏ nhất của tất cả các thửa ruộng con.
Input
Đọc từ thiết bị vào chuẩn:
Dòng đầu tiên chứa một số nguyên dương ~T~ là số lượng bộ test ~(T \le 3)~
Mỗi nhóm dòng trong số T nhóm dòng tiếp theo mô tả một bộ test có cấu trúc như sau:
— Dòng thứ nhất chứa hai số nguyên không âm ~n~ và ~m~ ~(m < n \le 25000)~.
— Dòng thứ hai chứa hai số nguyên không âm ~L~ và ~W~ ~(L, W \le 10^9)~.
— Dòng cuối cùng chứa ~n~ số nguyên dương ~a_i (a_i \le 10^9, 1 \le i \le n)~. Dữ liệu đảm bảo ~\sum{a_i}=L \cdot W~.
Hai số liên tiếp trong cùng một dòng được ghi cách nhau bởi dấu cách.
Output
Ghi ra thiết bị ra chuẩn ~T~ dòng, mỗi dòng một số thực duy nhất là tổng chu vi tính được trong bộ test tương ứng và có tối đa ~9~ chữ số sau dấu chấm thập phân. Đáp án của bạn được phép có sai số tuyệt đối đến ~10^{-3}~ so với đáp án trong bộ test.
Scoring
| Subtask | Điểm | Giới hạn |
|---|---|---|
| 1 | ~12~ | ~m, n \le 15~ |
| 2 | ~28~ | ~m, n \le 500~ |
| 3 | ~26~ | ~m, n \le 4000~ |
| 4 | ~34~ | ~m, n \le 25000~ |
Sample Input 1
1
7 2
7 8
11 7 12 6 3 7 10
Sample Output 1
80.000000000

Bình luận