poj 1064 二分答案

2022-05-02 22:12:12 字數 836 閱讀 4657

傳送門:problem 1064

題意:

有n條繩子,長度分別為 length[1,2,3,........,n]。

如果從它們中切割出k條長度相同的繩子,這k條繩子每條最長有多長?

結果保留兩位小數。

題解:

二分可能的長度。

ac**:

精度問題:

//解範圍為 [l,r)

27double l=0,r=maxl+1;28

for(int i=1;i <= 100;++i)

2936 printf("

%.2f\n

",floor(l*100)/100);//

printf()會四捨五入,而如果5入的話就不滿足條件了

37return0;

38 }

view code

POJ 1064 保證精度二分搜答案

儲存一下思路。思路很簡單就是二分找答案,每次找到乙個值,判斷一下是否可以滿足剪得個數大於等於k,然後一直找下去。主要是這裡for i,0,100 這裡最開始一直卡住了,不知道設定什麼,100就已經可以到10 30了,對於二的精度來說已經完全足夠了。然後就是輸出,一定要注意兩位小數直接pinrtf 2...

POJ 1064 二分搜尋

poj 1064 題目大意 有n條繩子,他們的長度分別為li,如果從他們中切割k條長度相同的繩子的話,這k條繩子每條最長能有多長?答案保留到小數點後2位 演算法分析 這個問題用二分搜尋可以非常容易的求得答案。讓我們套用二分搜尋的模型試著解決這個問題。令 條件c x 可以得到k條長度為x的繩子 則問題...

POJ1064 簡單二分

題意 有n條繩子,他們的長度分別為li。如果從他們中切割出k條長度相同的繩子的話,這k條繩子每條最長能有多長。答案保留到小數點後兩位。思路 二分搜尋的模型解決 求滿足某個條件c x 的最小 大 的x 這一問題。這個題裡 c x 可以得到k條長度為x的繩子 由於長度為li的繩子最多可以切出floor ...