牛客:多项式输出

解题思路:先处理第一个系数,因为第一个系数前面的符号为+时,不用写,然后处理最后一个数,因为它是一个常数,至于中间的数都统一处理,先判断他的正负输出它的符号,然后判断他们的绝对值是否为1,如果为1就不输出系数,如果不唯一就输出绝对值,然后判断是不是倒数第二项,因为倒数第二项不用输出指数部分。
注意:要用一个标志位来记录,是否全为0,如果全为0就直接输出0;
cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n;
int arr[101];
int main(){
    cin>>n;
    for(int i=n;i>=0;i--){
        cin>>arr[i];
    }
    int num=0;
    for(int i=n;i>=0;i--){
        int m=arr[i];
        if(m==0){
            num++;
            continue;
        }
        
        if(i==n){
          if(m>0){}
          else cout<<"-";
        }
        
        if(i!=n){
        if(m>0){
            cout<<"+";
        }else{
            cout<<"-";
        }
        }
        
         if(i==0){
            cout<<fabs(m);
             break;
        }
        
        
        if(m!=1&&m!=-1){
            cout<<fabs(m);
        }
        
        cout<<"x";
        
        if(i!=1){
            cout<<"^"<<i;
        }
    }
    
    if(num==n+1){
        cout<<0;
    }
    
    
    
    return 0;
}
相关推荐
talenteddriver24 分钟前
java: Java8以后hashmap扩容后根据高位确定元素新位置
java·算法·哈希算法
跨境猫小妹1 小时前
2025 TikTok Shop:从内容爆发到系统化深耕的商业跃迁
大数据·人工智能·算法·产品运营·亚马逊
不穿格子的程序员1 小时前
从零开始写算法 —— 二叉树篇 1:二叉树的三种遍历(递归实现法)
算法·深度优先·二叉树遍历·fds
子夜江寒1 小时前
逻辑森林与贝叶斯算法简介
算法·机器学习
xu_yule1 小时前
算法基础-背包问题(01背包问题)
数据结构·c++·算法·01背包
我不是小upper2 小时前
从理论到代码:随机森林 + GBDT+LightGBM 融合建模解决回归问题
人工智能·深度学习·算法·随机森林·机器学习·回归
budingxiaomoli2 小时前
分治算法-快排
数据结构·算法
云泽8082 小时前
C++ STL 栈与队列完全指南:从容器使用到算法实现
开发语言·c++·算法
前端小白在前进3 小时前
力扣刷题:复原IP地址
tcp/ip·算法·leetcode
yaoh.wang3 小时前
力扣(LeetCode) 94: 二叉树的中序遍历 - 解法思路
python·算法·leetcode·面试·职场和发展·二叉树·跳槽