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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

POJ 1661 Help Jimmy(递推DP)

發布時間:2025/5/22 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 POJ 1661 Help Jimmy(递推DP) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

思路:

1. 每個板子有左右兩端, dp[i][0], dp[i][1] 分別記錄左右端到地面的時間

2. 從下到上遞推計算, 上一層的板子必然會落到下面的某一層板子上, 或者地面上

?

總結:

1. 計算每個板子的 dp[i][0/1] 僅需考慮該板子的直接前驅即可

2. 動規的思想并不很明顯

3. 代碼中, 兩個板子相對位置的判斷特別精髓

4. 將地面和初始狀態都抽象成一塊板子

?

代碼:

#include <iostream> #include <algorithm> using namespace std;class board { public:int x1, x2, h;board(int _x1, int _x2, int _h):x1(_x1), x2(_x2), h(_h){}board() {board(-1,-1,-1);}bool operator <(const board & other) const {return this->h < other.h;} };const int INF = 0X3F3F3F3F; const int MAXN = 1010; int t, N, X, Y, H, MAX; board boards[MAXN]; int dp[MAXN][2];int mainFunc() {for(int i = 0; i <= N+1; i ++) {for(int j = i-1; j >= 0; j --) {if(boards[i].x1 >= boards[j].x1 && boards[i].x1 <= boards[j].x2) { // i 的左端可以掉落到 j 上int h = boards[i].h - boards[j].h;if(h > MAX) dp[i][0] = INF;else if (j == 0) dp[i][0] = h;else dp[i][0] = min(dp[j][0]+boards[i].x1-boards[j].x1, dp[j][1]+boards[j].x2-boards[i].x1) + h;break;}}for(int j = i-1; j >= 0; j --) {if(boards[i].x2 >= boards[j].x1 && boards[i].x2 <= boards[j].x2) { // i 的右端可以掉到 j 上int h = boards[i].h - boards[j].h;if(h > MAX) dp[i][1] = INF;else if(j == 0) dp[i][1] = h;elsedp[i][1] = min(dp[j][0]+boards[i].x2-boards[j].x1, dp[j][1]+boards[j].x2-boards[i].x2) + h;break;}}}return dp[N+1][1]; }int main() {freopen("E:\\Copy\\ACM\\poj\\1661\\in.txt", "r", stdin);cin >> t;while(t-- >= 1) {cin >> N >> X >> H >> MAX;for(int i = 0; i < N; i ++) {cin >> boards[i].x1 >> boards[i].x2 >> boards[i].h;}boards[N].x1 = -20010, boards[N].x2 = 20010, boards[N].h = 0;boards[N+1].x1 = X, boards[N+1].x2 = X, boards[N+1].h = H;sort(boards, boards+N+2);// mainFunctioncout << mainFunc() << endl;}return 0; }

  

update 2014年3月16日10:36:58

1. 直接前驅可以預處理得到

轉載于:https://www.cnblogs.com/xinsheng/p/3447334.html

總結

以上是生活随笔為你收集整理的POJ 1661 Help Jimmy(递推DP)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 99久久婷婷国产综合精品青牛牛 | 中文字幕在线播放av | 无码视频一区二区三区 | 色女人在线 | avtt2015| 一出一进一爽一粗一大视频 | 奇米狠狠去啦 | 毛片基地在线播放 | va免费视频| 亚洲一级Av无码毛片久久精品 | 中文字幕在线视频观看 | 日本天堂在线播放 | 日本少妇全体裸体洗澡 | 亚洲人人人 | 日韩高清影院 | 国产αv| 黄色网在线免费观看 | 日韩成人高清 | 午夜寂寞影视 | 男人的天堂a在线 | 一区二区天堂 | 制服丝袜手机在线 | 成人小视频免费观看 | 国产成人无码av | 亚洲av日韩精品久久久久久久 | 香蕉视频97 | 黄色网址你懂得 | 99riAv国产精品无码鲁大师 | 无码精品人妻一区二区三区漫画 | 欧美三级中文字幕 | 一区二区不卡在线观看 | 欧美 日韩 人妻 高清 中文 | 丰满少妇被猛烈进入无码 | 亚洲视频99 | 潘金莲一级淫片免费放动漫 | 国产农村妇女精品一二区 | 在线观看日韩一区二区 | 超碰在线公开免费 | 乖女从小调教h尿便器小说 欧美韩一区二区 | www.4虎| 爱爱一区二区三区 | 99热在线免费观看 | 清冷男神被c的合不拢腿男男 | 91sex国产 | 久久机热这里只有精品 | 久久综合婷婷国产二区高清 | 凸凹人妻人人澡人人添 | 色综合婷婷 | 天天操夜夜拍 | 97人妻天天摸天天爽天天 | 国产xxxx视频| 亚洲一页 | 爆乳熟妇一区二区三区 | 日韩不卡视频在线观看 | 九七电影院97理论片 | 另一种灿烂生活 | 亚洲黄色片免费看 | 在线爱情大片免费观看大全 | 国产又粗又长又黄的视频 | 亚洲 欧美 日韩系列 | 1769国产精品| 国产女主播av| 极品少妇xxxx | 东京热一区二区三区四区 | 久久国产亚洲精品无码 | 床戏高潮呻吟声片段 | 17c在线观看 | 久久精品国产亚洲AV无码麻豆 | 18p在线观看 | 青青草自拍视频 | 久久久www成人免费精品 | 色视频网址 | 久久综合久久鬼色 | 超碰777 | 欧美精品久久久久性色 | 成人福利小视频 | 九九黄色片 | 三级黄色视屏 | 中文字幕亚洲综合 | 天天干天天干天天干 | 99re伊人| 国产麻豆乱码精品一区二区三区 | 国产a∨精品一区二区三区仙踪林 | 亚洲色图另类小说 | 成人免费超碰 | 交视频在线播放 | 欧美性生交xxxxxdddd | 操操操网站 | 久久精品国产亚洲AV熟女 | 国产91网址 | 一区二区三区视频在线播放 | 新红楼梦2005锦江版高清在线观看 | 国产香蕉一区 | 久久综合久久鬼色 | 99热18 | 日韩综合av | 日本一卡二卡在线 | 少妇精品无码一区二区免费视频 | 福利网站在线 |