[BOJ 15478] 森林伐採 (Deforestation)
View as PDF
Submit solution
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
Points:
4
Time limit:
2.0s
Memory limit:
512M
Problem type
Allowed languages
JOI 王国には広大な森林がある.森林は長方形の形をしており,南北に H マス,東西に W マスのマス目状に分けられている.北から i マス目,西から j マス目(1 ≦ i ≦ H, 1 ≦ j ≦ W)の領域には A_{i,j} 本の木が生えている.ただし,北西の端の領域には木材加工工場があり,木が生えていない.すなわち,A_{1,1}=0 である.</p>
木が生えていない領域には人が立ち入ることが出来る.また人は東西南北に隣接する領域に,その領域に木が生えていなければ,移動することができる.森林の外に出ることはできない.JOI 君は JOI 王国の公共事業として,木を伐採し,北西の端の領域と南東の端の領域を,相互に行き来可能にしたい.
木の伐採は以下のようにして行う.はじめ,JOI 君は木材加工工場のある北西の端の領域にいる.JOI 君は,現在いる領域と東西南北に隣接する木の生えていない領域に 1 分で移動することができる.また,東西南北に隣接する木の生えている領域から,1 分で木を 1 本伐採することができる.ただし,木を 1 本伐採したら,そのたびに北西の端の領域にある木材加工工場まで伐採した木を運ばなければならない.木を運んでいる間も,JOI 君の移動速度は変わらない.木を運んでいる間は,他の木を伐採することはできない.
条件を満たすように木を伐採するのにかかる時間の最小値を求めよ.ただし,伐採にかかる時間とは,最後に伐採した木を,木材加工工場に運ぶまでの時間とする.
입력 형식
入力は以下の形式で標準入力から与えられる.</p>
H W
A_{1,1} ... A_{1,W}
:
A_{H,1} ... A_{H,W}
## 출력 형식
条件を満たすように木を伐採するのにかかる時間の最小値を 1 行で出力せよ.
예제 입력 1
2 3
0 1 2
3 4 5
예제 출력 1
32
예제 입력 2
2 5
0 5 0 0 0
0 0 0 9 1
예제 출력 2
13
예제 입력 3
2 5
0 2 0 0 0
0 0 0 9 1
예제 출력 3
11
Comments