我错哪了
查看原帖
我错哪了
568903
Miracle1024楼主2023/5/4 23:18

\kk

#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
typedef double db;
const int maxx=0x3f3f3f,minn=-0x3f3f3f;
db a,b,c,d,l,r,md,k[222];
int cnt=0;
db f(db x){
	return (a*x*x*x+b*x*x+c*x+d);
}
int main(){
//	freopen("doc.in","r",stdin);
//	freopen("doc.out","w",stdout);
	cin>>a>>b>>c>>d;
	for(int i=-100;i<=100;i++){
		if(!k[i+100]){
			printf("%.2lf ",i);
			cnt++;
			if(cnt==3)return 0;
		}
		if(k[i+100]*k[i+101]<0){
			l=i;
			r=i+1;
			while(r-l>=0.001){
				md=(l+r)/2.0;
				if(f(l)*f(md)<=0)r=md;
				else l=md;
			}
			printf("%.2lf ",l);
			cnt++;
			if(cnt==3)return 0;
		}
	}
    return 0;
}

2023/5/4 23:18
加载中...