RT,直接暴力的时间复杂度为O(n⋅10s+1),n为根的范围,s为精度(即保留几位小数)。因此能够通过本题,那么本题的难度是否需要下调为橙?
以下为我的暴力做法:
#include<iostream>
#include<cstdio>
#include<cmath>
#define fo(i,x,y) for(register int i=x;i<=y;++i)
#define go(i,x,y) for(register int i=x;i>=y;--i)
using namespace std;
const double eps=1e-7;
int main(){
	double a,b,c,d;
	cin>>a>>b>>c>>d;
	for(double i=-100.000;i<=100.000;i+=0.001){
		double k=i,ans=d;
		ans+=k*c;k*=i;
		ans+=k*b;k*=i;
		ans+=k*a;
		if(abs(ans)<=eps) printf("%.2f ",i);
	}
	return 0;
}