发现题面上有:
> 他只能进行向右或者向下的移动
(他甚至还给你加粗了,他真的,我哭死)
因此满足无后效性,直接动态规划。暴力分类讨论一下:
* 如果 (i,j)(i,j)(i,j) 是道路:
f(i,j)=max(f(i,j−1),f(i−1,j))−1f(i,j)=\max(f(i,j-1),f(i-1,j))-1f(i,j)=max(f(i,j−1),f(i−1,j))−1(走路体力减一)
* 如果 (i,j)(i,j)(i,j) 是怪物:
f(i,j)=max(f(i,j−1),f(i−1,j))−kf(i,j)=\max(f(i,j-1),f(i-1,j))-kf(i,j)=max(f(i,j−1),f(i−1,j))−k(打怪体力减 kkk)
* 如果 (i,j)(i,j)(i,j) 是果子:
f(i,j)=max(f(i,j−1),f(i−1,j))−zf(i,j)=\max(f(i,j-1),f(i-1,j))-zf(i,j)=max(f(i,j−1),f(i−1,j))−z(吃果子 贴贴 体力加 zzz)
很有趣的两个点,就是:
和
相信聪明的大家都知道为什么吧。代码就很简单了 ,好所以不放代码了,你们找 AC 君要吧。