Gửi bài giải
Điểm:
3,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
SUM.INP
Output:
SUM.OUT
Dạng bài
Ngôn ngữ cho phép
C, C++, C++ (Themis), Java, Pascal, Python, Scratch
Cho một bảng hình vuông gồm ~N~ hàng, ~N~ cột. Các hàng của bảng được đánh số từ 1 đến ~N~ từ trên xuống dưới, các cột của bảng được đánh số từ 1 đến ~N~ từ trái qua phải. Ô nằm trên giao của dòng ~i~ và cột ~j~ được gọi là ô ~(i,j)~ và trên ô đó chứa một số nguyên dương là ~A_{i,j}~ (~1 \leq i, j \leq N~).
Yêu cầu: Hãy chọn một hình vuông kích thước ~K \times K~ của bảng sao cho tổng giá trị các ô được chọn là lớn nhất.
Dữ liệu vào:
Cho trong file SUM.INP có cấu trúc như sau:
- Dòng thứ nhất: Ghi hai số nguyên dương ~N, K~ (~N \leq 10^3, 1 \leq K < N~).
- Dòng thứ ~i~ trong số ~N~ dòng tiếp theo: Ghi ~N~ số nguyên dương, số thứ ~j~ là ~A_{i,j}~ (~A_{i,j} \leq 10^3~).
- Các số trên một dòng được ghi cách nhau ít nhất một dấu cách.
Dữ liệu ra:
Ghi ra file SUM.OUT với cấu trúc như sau:
- Dòng 1: Ghi số nguyên dương ~S~ là tổng tìm được.
Ví dụ:
Input: SUM.INP
4 3
1 9 1 1
9 9 9 9
9 9 9 9
14 9 9 1
Output: SUM.OUT
86
Bình luận