AcWing 790. 数的三次方根
原题链接
简单
作者:
coquetish
,
2024-09-05 11:45:33
,
所有人可见
,
阅读 8
先观察数据范围,给$l$, $r$取到开区间,按照题意,最终收敛到$l = r$就是答案了,和之前的开区间模板长得非常像(开区间模板yyds)
#include <iostream>
#include <iomanip>
using namespace std;
double n;
double binary_search(double x) {
double l = -100, r = 100;
while(r - l > 1e-8) {
double mid = (l + r) / 2;
if(mid * mid * mid >= n) r = mid;
else l = mid;
}
return l;
}
int main() {
ios::sync_with_stdio(false), cin.tie(nullptr);
cout << fixed << setprecision(6);
cin >> n;
cout << binary_search(n) << "\n";
}