對於dp,還不是很熟。需要加強!!~~
說一下這道題,由於兔子是勻速的,所以兔子到達終點的時間是確定的,唯一不確定的是烏龜的。
將起點,終點,以及中間的n個充電站當作n + 2 個點。需要求解到達n + 2個點的最優解。
起點時間是0.這是必須的,然後往後面dp
到第i個,就讓j從0迴圈到i-1,依次代表從j站充滿了電一直開到i站,這樣得到到達i站所需要的最短時間。
最後比較到達第n+2站(終點)的時間與兔子所花的時間就可以了。
下面的是ac的**:
#include #include using namespace std;
int l, n, c, t;
int vr, vt1, vt2;
int p[102];
double dp[105];
void dp()
else //全程騎車。
ans += dp[j]; //加上前面的時間
if(j) //過充電站,加上充電時間
ans += t;
if(min > ans) //找最小時間
min = ans;
} dp[i] = min; }}
int main()
return 0;
}
杭電2059 經典DP 龜兔賽跑
龜兔賽跑 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 據說在很久很久以前,可憐的兔子經歷了人生中最大的打擊 賽跑輸給烏龜後,心中鬱悶,發誓要報仇雪恨,於是躲進了杭州下...
HDU 杭電 2059 龜兔賽跑
龜兔賽跑 problem description 據說在很久很久以前,可憐的兔子經歷了人生中最大的打擊 賽跑輸給烏龜後,心中鬱悶,發誓要報仇雪恨,於是躲進了杭州下沙某農業園臥薪嘗膽潛心修煉,終於練成了絕技,能夠毫不休息得以恆定的速度 vr m s 一直跑。兔子一直想找機會好好得教訓一下烏龜,以雪前恥...
杭電OJ 2059 龜兔賽跑
原文 據說在很久很久以前,可憐的兔子經歷了人生中最大的打擊 賽跑輸給烏龜後,心中鬱悶,發誓要報仇雪恨,於是躲進了杭州下沙某農業園臥薪嘗膽潛心修煉,終於練成了絕技,能夠毫不休息得以恆定的速度 vr m s 一直跑。兔子一直想找機會好好得教訓一下烏龜,以雪前恥。最近正值hdu舉辦50周年校慶,社會各大名...