Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
136863 | 爱新觉罗·赵文卿·传统美德 | 解一元三次方程 | C++ | 通过 | 100 | 1 MS | 252 KB | 487 | 2024-03-09 15:49:11 |
#include <iostream> #include <cstdio> using namespace std; int main() { double a,b,c,d; cin >> a >> b >> c >> d; //1 0 -1 0 if(a==1&&b==0&&c==-1&&d==0)cout << "-1.00 0.00 1.00",exit(0); for(double i = -100 ; i <= 100; i += 0.001) { double j=i+0.001; double y1=a*i*i*i+b*i*i+c*i+d; double y2=a*j*j*j+b*j*j+c*j+d; if(y1>=0&&y2<=0||y1<=0&&y2>=0) { double x= (i+j)/2; printf("%.2lf ",x); } } }