本題是乙個標準的浮點數二分查詢模板題。
acwing**,
給定乙個浮點數n,求它的三次方根。
共一行,包含乙個浮點數n。
共一行,包含乙個浮點數,表示問題的解。
注意,結果保留6位小數。
1000.00
10.000000
−10000 ≤ n ≤ 10000
要求求輸入資料的三次方根。
從題目中知道,資料範圍是 [-10000, 10000] 之間。因此我們可以得到如下結論:
1、左邊界為 -10000。這個估計不會出錯。
2、右邊界不是 n,這點要注意。因為也就是資料有正有負。由於是求三次方根,要注意負數的三次方根資料會變大。比如 -1000 的三次方根為 -10;1000 的三次方根為 10。所以右邊界應該為 10000。
題目需要保留 6 位小數點資料,因此我們可以定義 double eps=1e-8; 即可。
從題目可以知道,我們的檢查函式就是判斷 mid 的三次方和使用者輸入 n 的關係。函式實現如下:
bool check(double x, double n)
這個比較簡單,既然是浮點數二分查詢,套用對應的浮點數二分查詢模板即可。
#include #include double check(double x, double n)
int main() else
}printf("%.6lf\n", left);
return 0;
}
浮點數二分
2 浮點數二分 模板 浮點數二分演算法模板 模板題 acwing 790.數的三次方根 bool check double x double bsearch3 double l,double r return l acwing790.數的三次方根 給定乙個浮點數n,求它的三次方根。輸入格式 共一行,...
整數二分和浮點數二分
注意點 1.有單調性一定可以二分,二分不一定需要單調性 2.二分本質 找到一種性質,將乙個區間一分為二,一部分滿足性質,另一部分不滿足性質,通過二分找到兩部分的邊界 3.二分一定有解,即能夠找到性質的邊界。無解通常跟題目有關。4.浮點數二分 精度足夠小時結束迴圈 或者 直接迴圈100次 while ...
切香腸 浮點數 二分)
描述 窗外肉價飛漲,屋裡灶台微響。便當店老闆在沉思中苦惱 現在店裡的存貨還有n條特製香腸,長度分別為li 如果能從它們中切割出k條長度相同的香腸的話,就能應付突如其來的奇怪的訂單 你能幫這位老闆計算一下這k條香腸每條最長能有多長嗎?答案保留小數點後兩位,規定1單位長度的香腸最多可以切割成100份 輸...