(DP)解法https://soundhound2018.contest.atcoder.jp/submissions/2036279以下の説明は、配列や座標などは全て問題文通りの1-indexedで考えていく。実装では0-indexedでやっている。部屋(0,1)から部屋(x,y)へ移動する時の得られる金額の最大値」これを更新していくことを考えよう。答えはDP[H][1]DP[y][1~W]と配列P[y+1],F[y+1]からDP[y+1][1~W]を更新していこう。行毎に独立に更新を考えることにする。dp,P,Fを使って次のdpを求めて返す。この更新の為に配列A,Bを作ろう。B[i+1]+P[i+1]-F[i+1]*2)これを使って、更新していこう。[1,i]の範囲でx座標がiまで移動してくるまでの金額の最大値」を更新しながらやっていこう。ma)これで大体いいが、これだと遷移が左から右しか出来ないので、左右反転したやつでもやる。これでDPを更新していく。F]月別アーカイブスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。