日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

leecode第一百七十四题(地下城游戏)

發布時間:2024/1/8 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 leecode第一百七十四题(地下城游戏) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

class Solution { public:int calculateMinimumHP(vector<vector<int>>& dungeon) {int len1=dungeon.size();if(len1==0)return 1;int len2=dungeon[0].size();if(len2==0)return 1;vector<int> res(len2,0);//只使用一個數組輔助空間for(int i=len1-1;i>=0;i--){for(int j=len2-1;j>=0;j--){if(i==len1-1&&j==len2-1)//初始化公主房間 {if(dungeon[i][j]<0)//如果公主房間<0,那想活著必須取絕對值+1res[j]=abs(dungeon[i][j])+1;elseres[j]=1;//負責為1即可 }else{int temp;//對于邊界和中間值,對比的數據是不同的if(i==len1-1)temp=res[j+1];else if(j==len2-1)temp=res[j];elsetemp=min(res[j],res[j+1]);//如果是中間的值,只需看右或下里面最小值即可if(dungeon[i][j]<0)//如果當前房間掉血,就加上這個絕對值res[j]=temp+abs(dungeon[i][j]);else{if(temp-dungeon[i][j]>0)//如果不掉血且加上這個房間不多于后面需要res[j]=temp-dungeon[i][j];elseres[j]=1;//如果加血賊多,后面的房間完全沒問題 }}}}return res[0];} };

分析:

動態規劃不一定等于遞歸

動態規劃還是從后往前思考比較好

轉載于:https://www.cnblogs.com/CJT-blog/p/10843380.html

總結

以上是生活随笔為你收集整理的leecode第一百七十四题(地下城游戏)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。