[BOJ 15476] 幹線道路 (Trunk Road)

View as PDF

Submit solution

Points: 1
Time limit: 2.0s
Memory limit: 512M

Problem type
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

JOI 市は,東西方向にまっすぐに伸びる H 本の道路と,南北方向にまっすぐに伸びる W 本の道路によって,碁盤の目の形に区分けされている.道路と道路の間隔は 1 である.JOI 市では,これら H+W 本の道路から,東西方向に 1 本,南北方向に 1 本,合計 2 本の道路を幹線道路として選ぶことになった.</p>

北から i 本目 (1≦i≦H) の道路と,西から j 本目 (1≦j≦W) の道路の交差点を,交差点 (i,j) とする.交差点 (i,j) と北から m 本目 (1≦m≦H) の道路の距離は |i-m| であり,交差点 (i,j) と西から n 本目 (1≦n≦W) の道路の距離は |j-n| である. また,交差点 (i,j) の近くには A_{i,j} 人の住人が住んでいる.

2 本の幹線道路を選んだときの,JOI 市の全ての住人に対する,最寄りの交差点から近い方の幹線道路への距離の総和の最小値を求めよ.

입력 형식

入力は以下の形式で標準入力から与えられる.</p>

H W
A_{1,1} A_{1,2} ... A_{1,W}
:
A_{H,1} A_{H,2} ... A_{H,W}
## 출력 형식

JOI 市の全ての住人に対する,最寄りの交差点から近い方の幹線道路への距離の総和の最小値を出力せよ.

예제 입력 1

3 5
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1

예제 출력 1

8

예제 입력 2

5 5
1 2 3 1 5
1 22 11 44 3
1 33 41 53 2
4 92 35 23 1
4 2 6 3 5

예제 출력 2

164

Comments

There are no comments at the moment.