hdoj 2199

2021/4/11 10:25:38

本文主要是介绍hdoj 2199,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

#include<bits/stdc++.h>
using namespace std;
#define f(x) (x*(x*(x*(x*8+7)+2)+3)+6)
double bsearch(double l,double r,double x)
{
	double mid;
	while(r-l>1e-7)
	{
		mid=(l+r)/2;
		if(f(mid)<x)
		{
			l=mid;
		}
		else
		{
			r=mid;
		}
	}
	return (l+r)/2;
}
int main(void)
{
	int n;
	double m;
	scanf("%d",&n);
	double f0,f100;
	f0=f(0.0);
	f100=f(100.0);
	while(n--)
	{
		scanf("%lf",&m);
		if(m<f0||m>f100)
		{
			printf("No solution!\n");
		}
		else
		{
			printf("%.4f\n",bsearch(0,100,m));
		}
	}
	return 0;
}


这篇关于hdoj 2199的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程