p1016 旅行家的預算
貪心求,在當前點如果能到達距離最近的油價比他小的就直接去油價比他小的,
如果在可行範圍內沒有比他油價小的,就加滿開到可行範圍內油價最小的點;
這麼做是對的,我不會證明;
還有就是,如果變數定義在外面了,在for迴圈裡面就不要定義了,這個點卡了我一下午;
一直停止執行……
#include#include#include
using
namespace
std;
const
int maxn=520
;typedef
double
dd;struct
node
s[maxn];
dd all_dis,capa,per_dis,st_p;
intn;
bool
cmp(node qw,node we)
dd ans_cost,last;
intmain()
s[n+1].dis=all_dis;
for(int i=0;i<=n;i++)
}sort(s+1,s+n+1
,cmp);
for(int i=0;i<=n+1
;)
if(s[j].p>s[i].p)
else
}printf(
"%.2lf
",ans_cost);
return0;
}
(貪心)P1016 旅行家的預算
應用 題庫訓練 比賽記錄討論 題目提供者ccf noi 評測方式雲端評測標籤noip提高組1999 難度普及 提高 時空限制1000ms 128mb 提交 題解 乙個旅行家想駕駛汽車以最少的費用從乙個城市到另乙個城市 假設出發時油箱是空的 給定兩個城市之間的距離d1d1 汽車油箱的容量cc 以公升為...
P1016 旅行家的預算 貪心
題目鏈結 一道貪心題,為使油費最小,則我們就必須盡可能的在油價低的地方加油。在不加油的情況下,汽車可行駛的最大距離為c d2,記為max d,所以到達乙個車站後加的油可影響的範圍在後面距離當前加油站小於等於max d的加油站,為使油費最少,我們不能浪費一分錢。如果在max d內有油價低於當前加油站時...
P1016 旅行家的預算
乙個旅行家想駕駛汽車以最少的費用從乙個城市到另乙個城市 假設出發時油箱是空的 給定兩個城市之間的距離d1d1 汽車油箱的容量cc 以公升為單位 每公升汽油能行駛的距離d2d2 出發點每公升汽油 pp和沿途油站數nn nn可以為零 油站ii離出發點的距離didi 每公升汽油 pipi i 1,2,ni...