全re求调
查看原帖
全re求调
1408288
star5楼主2025/1/9 13:38
#include<bits/stdc++.h>
using namespace std;

double q[20]={0};

double f(double x,int n){
	double sum=0;
	for(int i=0;i<=n;i++){
		sum=sum*x+q[i];
	}

	return sum;
}

double solve(double l,double r,int n){
	while(r-l>=1e-6){
		double lmid=l+(r-l)/3,rmid=r-(r-l)/3;
		if(f(lmid,n)>f(rmid,n)) r=rmid;
		else l=lmid;
	}
		printf("%.5lf",l);
}


int main(){
	int n;
	double l,r;
	scanf("%d %lf %lf",&n,&l,&r); 
	for(int i=0;i<=n;i++){
		scanf("%lf",&q[i]);
	}
	solve(l,r,n);
	return 0;
}
2025/1/9 13:38
加载中...