全部评论 6

  • 置顶

    2026-08-11 来自 广东

    0
  • #include <iostream>
    #include <vector>
    #include <cmath>
    
    using namespace std;
    
    int main() {
        int n;
        cin >> n;
        vector<int> coeffs(n + 1);
        for (int i = 0; i <= n; ++i) {
            cin >> coeffs[i];
        }
    
        bool first = true; 
        bool has_output = false; 
    
        for (int i = 0; i <= n; ++i) {
            int exp = n - i; 
            int c = coeffs[i]; 
    
            if (c == 0) continue; 
            if (first) {
                if (c < 0) cout << "-";
                first = false;
            } else {
                if (c > 0) cout << "+";
                else cout << "-";
            }
            int abs_c = abs(c);
            if (exp > 0 && abs_c == 1) {
            } else {
                cout << abs_c;
            }
            if (exp > 0) {
                cout << "x";
                if (exp > 1) {
                    cout << "^" << exp;
                }
            }
    
            has_output = true;
        }
        if (!has_output) {
            cout << 0;
        }
    
        cout << endl;
        return 0;
    }
    

    3天前 来自 新疆

    0
  • 搞 n≤0n ≤ 0 的特殊是何意味,另外就是系数为 11 的情况没有考虑。

    2026-08-16 来自 上海

    0
  • 先说问题,你的代码第19,20,33,34行逻辑有问题,没考虑对应元素为-1或者1 的情况,详情请看测试点2 输出的开头位置。
    然后你的代码太繁琐冗长了,你写n小于0干啥?题目要求100%数据n>0,数学中不存在"负数个"数据这种概念,代码直接可以砍一半

    2026-08-16 来自 云南

    0
  • 给个题目链接

    2026-08-10 来自 广东

    0
  • 这是哪题

    2026-08-10 来自 上海

    0
暂无数据

提交答案之后,这里将显示提交结果~

首页