結果
| 問題 |
No.971 いたずらっ子
|
| コンテスト | |
| ユーザー |
👑 Kazun
|
| 提出日時 | 2022-01-03 02:57:37 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 375 ms / 2,000 ms |
| コード長 | 785 bytes |
| コンパイル時間 | 503 ms |
| コンパイル使用メモリ | 82,560 KB |
| 実行使用メモリ | 141,184 KB |
| 最終ジャッジ日時 | 2024-11-07 11:50:55 |
| 合計ジャッジ時間 | 4,941 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 21 |
ソースコード
#==================================================
H,W=map(int,input().split())
A=[]
for _ in range(H):
A.append(list(map(lambda x:1 if x=="k" else 0,input())))
DP=[[0]*W for _ in range(H)]; DP[0][0]=0
inf=1000*H*W
for i in range(H):
a=A[i]
D=DP[i]
for j in range(W):
if i==j==0:
continue
X=inf
if i!=0:
if a[j]==0:
if X>DP[i-1][j]+1:
X=DP[i-1][j]+1
else:
if X>DP[i-1][j]+1+(i+j):
X=DP[i-1][j]+1+(i+j)
if j!=0:
if a[j]==0:
if X>D[j-1]+1:
X=D[j-1]+1
else:
if X>D[j-1]+1+(i+j):
X=D[j-1]+1+(i+j)
D[j]=X
print(DP[-1][-1])
Kazun