立方根80pts求调~~
查看原帖
立方根80pts求调~~
824161
wyz20101114楼主2025/7/25 21:27
#include <bits/stdc++.h>
using namespace std;
double cube(double x)
{
    return x*x*x;
}
double solve(double num)
{
	double l,r; 
	if(num==0) return 0;
	if(num<0)
	{
		l=min(-1.0,num);
		r=0;
	}
	if(num>0)
	{
		r=max(1.0,num);
		l=0;
	}
	while(r-l>1e-7)
	{
		double mid=(l+r)/2;
		double cubemid=mid*mid*mid;
		if(abs(cubemid-num)<1e-7) return mid;
		else if(num<cubemid) r=mid;
		else if(num>cubemid) l=mid;
	}
	return (l+r)/2;
}
int main()
{
	double num;
	cin>>num;
	cout<<(int)floor(solve(num));
	return 0;
}
``
2025/7/25 21:27
加载中...