牛客:多项式输出

解题思路:先处理第一个系数,因为第一个系数前面的符号为+时,不用写,然后处理最后一个数,因为它是一个常数,至于中间的数都统一处理,先判断他的正负输出它的符号,然后判断他们的绝对值是否为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;
}
相关推荐
间歇性努力持续性发呆的野生快乐选手13 分钟前
dfs回溯,bfs枚举,完全背包
c++·算法·深度优先·宽度优先
郝学胜_神的一滴40 分钟前
干货版《算法导论》17:双数极值配对与卡牌手牌编码最优解
数据结构·算法
nike0good1 小时前
Codeforces Round 1101 (Div. 2) 题解
算法
中年阿甘1 小时前
解析式布局-二次线长布局
线性代数·算法·矩阵
程序喵大人1 小时前
【C++进阶】STL算法与函数对象 -【C++进阶】STL算法与函数对象
开发语言·c++·算法
鹿角片ljp2 小时前
LeetCode 53. 最大子数组和
算法·leetcode·职场和发展
江屿风3 小时前
【科普】【差集&交集概念落地云相册】流食般投喂
开发语言·c++·笔记·算法·云相册
数模竞赛Paid answer3 小时前
2023年五一杯数学建模A题无人机定点投放问题求解全过程完整文档及程序
算法·数学建模·无人机·五一杯
科学实验家3 小时前
dp子序列问题,好难呀
算法
wabs66612 小时前
关于图论【卡码网117.软件构建的思考】
数据结构·算法·软件构建·图论·卡码网