HDU 5935(貪心 卡精度)

2021-08-25 17:41:09 字數 863 閱讀 3480

題意:一輛車在路上直線走,它的速度是不減的,現在有一些該車路過的座標,測的時刻是整數時刻,最後乙個測值位置點是終點。問車開到終點的最少用時? 

思路:因為速度是勻速或遞增的,所以要想用時最少,最後一段路程用時就為1,速度就是這段路程,然後往前遞推求速度。有兩種情況:(1)如果後一段速度》=前一段路程,說明前一段路程可以用時1完成;(2)如果後一段速度《前一段路程,說明前一段的速度不可能等於後一段,應該等於前一段路程/t,這裡若路程是後一段速度的整數倍,則t=len/v,若路程不是後一段速度的整數倍,則t=len/v+1;這裡判斷double的整除用到了大佬的方法:只需要在做除法前-eps就可以實現了,因為對於double型我們認為[x-eps,x+eps]都是等於x的,那麼如果對x減去乙個eps則新的x屬於[x-2eps,x],這樣就可以判斷是否要加1了。

#includeusing namespace std;

#define inf 0x3f3f3f3f

#define ll long long

const int maxn=200005;

const double eps=1e-8;

const double pi = acos(-1.0);

#define lowbit(x) (x&(-x))

int t,n,a[100005],cas=0;

int main()

int ans=1;

double v=1.0*(a[n]-a[n-1]);

for(int i=n-1;i>=1;i--)

else

}printf("case #%d: %d\n",++cas,ans);

}return 0;

}

HDU 5935 Car(思維 模擬)

題目鏈結 題意 某個人從起點開車,他的速度是非遞減的,給出他走過的一些位置,他走過這些位置的時候當前時間是整數,問走到最後乙個點用的最小時間是多少 思路 開始的時候沒把樣例過出來,沒有思路,看了網上部落格以後才恍然大悟,因為速度你可以任意給定,而且求最小時間,那麼只要每乙個點到下乙個點的時間是整數即...

10 儲存HDU 貪心

description 話說上回講到海東集團面臨內外交困,公司的元老也只剩下xhd夫婦二人了。顯然,作為多年拼搏的商人,xhd不會坐以待斃的。一天,當他正在苦思冥想解困良策的時候,突然想到了自己的傳家寶,那是公司成立的時候,父親作為賀禮送來的乙個錦囊,徐父當時交代,不到萬不得已的時候,不要開啟它。現...

hdu 迷瘴 貪心

其實就是一道簡單貪心題,但第一次用分數做wa了,改用整數就對,也許是自己不夠細心,呵呵 如果是不夠細心的人,建議還是用整數吧 1 include 2 include 3 include 4using namespace std 5int cmp const void a,const void b 6...