不知道哪里错了(求大佬调)
查看原帖
不知道哪里错了(求大佬调)
1166817
Lcx_AK_IOI楼主2023/11/2 20:24
#include<bits/stdc++.h>
#define int long long
#define double long double
using namespace std;
const double p=1e-6;
int n;
double a[20],l,r;
double f(double s){
	double cnt=0;
	for(int i=n;i>=0;i--){
		cnt=cnt*s+a[i];
	}return cnt;
}
signed main(){
	cin>>n>>l>>r;
	for(int i=n;i>=0;i--){
		cin>>a[i];
	}
	while(r-l>p){
		double k=(r-l)/3.0;
		double midl=l+k,midr=r-k;
		if(f(midl)>f(midr)){
			r=midr;
		}else{
			l=midl;
		}
	}
	printf("%.5lf",l);
	return 0;
}
2023/11/2 20:24
加载中...