函数图像是开口向上的抛物线
二分查找最低点
#include "stdio.h"
#include "string.h"
#include "math.h"
double y;
double f(double x)
{
return 6*x*x*x*x*x*x*x+8*x*x*x*x*x*x+7*x*x*x+5*x*x-y*x;
}
int main()
{
int n;
double l,r,mid;
scanf("%d",&n);
while (n--)
{
scanf("%lf",&y);
if (f(0)<f(0.000001))
printf("%.4lf\n",f(0));
else
if (f(100)<f(99.999999))
printf("%.4lf\n",f(100));
else
{
l=0;r=100;
while (l-r<=0.000001)
{
mid=(l+r)/2;
if (f(mid)<f(mid+0.000001)) r=mid-0.000001;
else l=mid+0.000001;
}
printf("%.4lf\n",f(mid));
}
}
return 0;
}