貪心的策略是:
從起點/其中乙個加油站出發,所能到達的所有加油站中,如果有比當前加油站**便宜的,則從當前加油站加定量油正好跑到那個最近的**便宜的加油站;如果都比當前加油站貴,則加滿油並跑到**最低的乙個。
再注意一些邊界條件的處理。
ac**:
1 #include2 #include3ac**using
namespace
std;
4const
int n=10;5
double
d1,c,d2,pp,len;
6intn;7
bool
flag;
8double
d[n],p[n];
9void dfs(int pos,double left,double cost,int
pre)
11double _len=len+d[pos];
12for(int i=pos+1;i<=n+1&&d[i]<=_len;i++)14}
15if(pos+1
<=n+1&&d[pos+1]<=_len)
20 dfs(_pos,c-(d[_pos]-d[pos])/d2,cost+double(c-left)*p[pos],pos);
21return;22
}23}24
intmain()
洛谷P1016 旅行家的預算 貪心
這道題就是貪心 1 在第乙個加油站的時候,如果在加滿油能夠到達的加油站中有乙個加油站的錢比自己的少 其實等於也行 那就 加足夠到那個車站的油,直接去那個車站 2 這些車站中所有都比自己大,那就找乙個其中錢最少的車站 在當前車站加滿油,然後直接開到那個車站 3 然後到達車站時就不斷重複以上的處理方法 ...
洛谷 P1016 旅行家的預算
原題鏈結 這是一道比較簡單的貪心題目。這個題的解法如下 如果把起點定為第0個加油站,終點定為第n 1個加油站。從第0個點開始,驅車至能到達的最遠的那個加油站,在第0個點把油加滿。這其中會遇到三種情況 1.中間有乙個比出發點油價更便宜的加油站。2.中間的油價都比出發點高。3.不能到達下乙個加油站。很容...
(貪心)P1016 旅行家的預算
應用 題庫訓練 比賽記錄討論 題目提供者ccf noi 評測方式雲端評測標籤noip提高組1999 難度普及 提高 時空限制1000ms 128mb 提交 題解 乙個旅行家想駕駛汽車以最少的費用從乙個城市到另乙個城市 假設出發時油箱是空的 給定兩個城市之間的距離d1d1 汽車油箱的容量cc 以公升為...