[DHBB25 - DX35 - 10] Bài 1: Phần thưởng
Xem dạng PDF
Gửi bài giải
Điểm:
25,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT
Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Cho một bảng kích thước ~n \times m~. Các dòng của bảng được đánh số từ 1 đến ~n~, từ trên xuống dưới, dòng thứ ~i~ (~1 \le i \le n~) có trọng số là ~a_i~. Các cột của bảng được đánh số từ 1 đến ~m~, từ trái qua phải, cột thứ ~j~ (~1 \le j \le m~) có trọng số là ~b_j~. Ô nằm trên giao của dòng ~i~ và cột ~j~ được gọi là ô ~(i, j)~ và trên ô đó ghi một số nguyên có giá trị ~a_i + b_j~. Để nhận phần thưởng, An được phép chọn một bảng con kích thước ~n \times h~ chiếm trọn ~n \times h~ ô của bảng và phần thưởng mà An nhận được sẽ có giá trị bằng tổng giá trị các ô nằm trong bảng con đó.
Yêu cầu: Hãy xác định tổng giá trị lớn nhất mà An có thể nhận được.
Input
- Dòng thứ nhất chứa bốn số nguyên dương ~n, m, w, h~ (~w \le n \le 10^5, h \le m \le 10^5~);
- Dòng thứ hai chứa ~n~ số nguyên ~a_1, a_2, \dots, a_n~ (~|a_i| \le 10^6, 1 \le i \le n~);
- Dòng thứ ba chứa ~m~ số nguyên ~b_1, b_2, \dots, b_m~ (~|b_i| \le 10^6, 1 \le i \le m~);
Output
- Ghi một số nguyên duy nhất là tổng giá trị lớn nhất mà An có thể nhận được.
Bình luận