HDU 2899 Strange fuction 二分+数学

http://acm.hdu.edu.cn/showproblem.php?pid=2899



Problem Description
Now, here is a fuction:
  F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100)
Can you find the minimum value when x is between 0 and 100.
 

Input
The first line of the input contains an integer T(1<=T<=100) which means the number of test cases. Then T lines follow, each line has only one real numbers Y.(0 < Y <1e10)
 

Output
Just the minimum value (accurate up to 4 decimal places),when x is between 0 and 100.
 

Sample Input
   
   
   
   
2 100 200
 

Sample Output
   
   
   
   
-74.4291 -178.8534
求一个 不一定是递增函数的最大值。

#include <stdio.h>
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
int y;
double yuan(double x)
{
    return 6*pow(x,7)+8*pow(x,6)+7*pow(x,3)+5*pow(x,2)-y*x;
}
double dao(double x)
{
    return 42*pow(x,6)+48*pow(x,5)+21*pow(x,2)+10*x;
}
int main()
{
    int n;
    double mid;
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d",&y);
        if(dao(100.0)-y<=0)
           printf("%.4f\n",yuan(100.0));
        else
        {
            double l=0;
            double r=100;
            while(l+0.0000001<r)
            {
                mid=(l+r)/2;
                if(dao(mid)-y<0.00001&&dao(mid)-y>-0.00001)
                    break;
                else if(dao(mid)-y<0)
                    l=mid;
                else
                    r=mid;
            }
            printf("%.4f\n",yuan(mid));
        }
    }
    return 0;
}



Problem Description
Now, here is a fuction:
  F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100)
Can you find the minimum value when x is between 0 and 100.
 

Input
The first line of the input contains an integer T(1<=T<=100) which means the number of test cases. Then T lines follow, each line has only one real numbers Y.(0 < Y <1e10)
 

Output
Just the minimum value (accurate up to 4 decimal places),when x is between 0 and 100.
 

Sample Input
    
    
    
    
2 100 200
 

Sample Output
    
    
    
    
-74.4291 -178.8534

你可能感兴趣的:(HDU 2899 Strange fuction 二分+数学)