链接:https://ac.nowcoder.com/acm/problem/15717
来源:牛客网
来源:牛客网
题号:NC15717
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
对于方程 2018 * x ^ 4 + 21 * x + 5 * x ^ 3 + 5 * x ^ 2 + 14 = Y,
告诉你Y的值,你能找出方程在0~100之间的解吗?
告诉你Y的值,你能找出方程在0~100之间的解吗?
输入描述:
第一行输入一个正整数T(表示样例个数) 接下来T组样例 每组样例一行,输入一个实数Y
输出描述:
一行输出一个样例对应的结果, 输出方程在0~100之间的解,保留小数点后4位小数;如果不存在,输出 -1
示例1
输入
2 1 20180421
输出
-1 9.9993
#include<iostream>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
double y;
cin>>y;
double l=0,r=100,m;
for(int i=0;i<50;i++){
m=(l+r)/2;
if(2018*m*m*m*m+21*m+5*m*m*m+5*m*m+14>y){
r=m;
}
else
l=m;
}
if(l==0||r==100)
cout<<"-1";
else
printf("%.4f",r);
cout<<endl;
}
return 0;
}

京公网安备 11010502036488号