Nội dung Bài tập
Mã:
ACM2016_North_G
Tên:
Optimal division (ACM 2016 Miền Bắc)
Dạng thi:
acm
Thang điểm:
1 điểm
Giới hạn thời gian:
2 giây
Giới hạn bộ nhớ:
64 MB
Được tạo bởi:
admin

Byteland is a beautiful and peaceful kingdom. Since the trade deal with Bitland came into effect, the economy has grown so much. A lot of people has moved to Byteland to live and work.

This kingdom is a grid of M rows and N columns. M rows are numbered from 1 to M; N rows are numbered from 1 to N; areaij is in the i-th row and j-th column. Currently, all areas are under direct govern of the King. However, due to the high rise in population, the King decided he will divide the Kingdom into 4 districts using one vertical line and one horizontal line, each area will be governed by a district leader. He wants to find a division that minimizes the difference between the minimum and the maximum population.

Please help the King to find such optimal division.

Input

•     The first line consists of two integer M and N (2 M 1000; 2 N 1000).

•   The next M lines describe the current population. In the i-th line, the j-th integer represents the population of areaij. These numbers do not exceed 1000.

Warning: input is large. Please use fast input method.

Output

Print a single number: the minimal gap possible.

Sample


  • input
    2 2
    1 2
    3 4
    output
    3
  • input
    3 3
    1 1 9
    1 1 1
    8 1 1
    output
    9

Byteland là một xứ sở rất đẹp và yên bình. Ban đầu, vua Byteland đã chia vùng đất của mình thành m hàng và n cột, giao điểm của hàng thứ i và cột thứ j được gọi là tỉnh ij với dân số Pij. Sau đó, nhận thấy rằng chia quá nhiều tỉnh sẽ dẫn tới sự khác biệt về văn hóa, kinh tế nên nhà vua quyết định chia lại vương quốc thành 4 tỉnh. Nhà vua thực hiện việc này bằng cách chia đất theo một đường ngang và một đường dọc (chạy theo ranh giới của các tỉnh cũ).

Nhà vua không muốn có sự khác biệt dân số quá lớn nên ngài yêu cầu bạn tìm ra cách chia sao cho tỉnh đông dân nhất và tỉnh thưa dân nhất có sự chênh lệch dân số thấp nhất.

Dữ liệu đầu vào:
- Dòng đầu tiên là 2 số nguyên m, n;  (2<=m<=1000, 2<=m<=1000)
- m dòng tiếp theo, mỗi dòng gồm n số liệu là dân số các tỉnh trước khi chia (không quá 1000)

Dữ liệu đầu ra:
Độ chênh lệch dân số ít nhất giữa tỉnh đông dân nhất và tỉnh thưa dân nhất

Ví dụ:
  • input
    2 2
    1 2
    3 4
    output
    3
  • input
    3 3
    1 1 9
    1 1 1
    8 1 1
    output
    9


    Quảng cáo
       Ngôn ngữ : 

       Theme : 
Mời bạn soạn code



		



      Ai có thể xem bài này : 

Thông tin



Phần thảo luận