傳送門: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 ...