Acwing790.数的三次方根

Acwing790.数的三次方根_第1张图片

解题思路:

Acwing790.数的三次方根_第2张图片

#include 

using namespace std;

int main()
{
    double x;
    cin >> x;
    double l = -10000, r = 10000;
    while(r - l > 1e-8)
    {
        double mid = (l + r) / 2;
        if(mid * mid * mid >= x) r = mid;
        else l = mid;
    }
    
    //这里输出l或者r都可以,因为足够接近
    printf("%lf\n", l); //printf默认保留6位小数,
    return 0;
}

你可能感兴趣的:(acwing,C++刷题,算法,c++)