50分,求助(^.<),2,4测试点不对
查看原帖
50分,求助(^.<),2,4测试点不对
1292265
Zzz123456789101112楼主2024/3/25 22:20
#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;

int a, b, c, d;
float ans[3]; // 修改数组大小为3

void f(int left, int right, int& mark) {
    if (left > right) { // 添加结束条件
        return;
    }
    if (mark == 3) { // 修改结束条件
        return;
    }
    float mid = (left + right) / 2*1.0;
    float y = a * pow(mid, 3) + b * pow(mid, 2) + c * mid + d;
    if (y == 0) {
        ans[mark] = mid;
        mark++;
    }
    f(left, mid - 1, mark);
    f(mid + 1, right, mark);
}

int main() {
    cin >> a >> b >> c >> d;
    int mark = 0; // 添加一个标记变量
    f(-100, 100, mark);
    for (int i = 0; i < 3; i++) {
        cout << fixed << setprecision(2) << ans[i] << ' ';
    }
    return 0;
}
2024/3/25 22:20
加载中...