50分,WA#2#4
查看原帖
50分,WA#2#4
1495466
LINYUHENG2楼主2025/7/19 15:50
#include<bits/stdc++.h>
using namespace std;
double a,b,c,d,x1,x2;
int s=0;
double f(double x){
	return a*x*x*x+b*x*x+c*x+d;
}

int main(){
	scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
	for(double i=-100;i<=100;i++){
		double l=i,r=i+1;
		x1=f(l),x2=f(r);
		if(x1==0){
			printf("%.2lf ",l);
			s++;
		}
		if(x1*x2>0){
			while(l-r>=-0.001){
				double mid=l+(r-l)/2;
				if(f(r)*f(mid)>0){
					l=mid;
				}else{
					r=mid;
				}
				printf("%.2lf ",r);
				s++;
			}
		}
		if(s==3) break;
	}
	return 0;
}
2025/7/19 15:50
加载中...