> 文档中心 > [NOIP2009 普及组] 多项式输出

[NOIP2009 普及组] 多项式输出


📋 个人简介

🎉大家好,我是3月份新人榜排名第三的 ༺金龙༒凤凰༻ 😎
💬支持我:点赞👍+收藏⭐️+留言📝
🌺格言:**༺永做优质༒programmer༻**🔮

📣多项式输出

🔮题目描述
🥭一元n次多项式可用如下的表达式表示:

[NOIP2009 普及组] 多项式输出
在这里插入图片描述
🥭输入格式

输入共有 22 行

第一行11个整数,n,表示一元多项式的次数。

第二行有 n+1个整数,其中第ii个整数表示第n-i+1 次项的系数,每两个整数之间用空格隔开。

🥭输出格式

输出共 1 行,按题目所述格式输出多项式。

🌌输入输出样例

🍋输入 #1

5 100 -1 1 -3 0 10

🍋输出 #1

100x^5-x^4+x^3-3x^2+10

🍋输入 #2

3 -50 0 0 1 

🍋输出 #2

-50x^3+1 

💧说明/提示
💧NOIP 2009 普及组 第一题
[NOIP2009 普及组] 多项式输出

💯CODE

#includeusing namespace std;int main(){int n;scanf("%d",&n);int a[n+2],b[n+2];for(int i=0;i<=n;i++){scanf("%d",&a[i]);b[i]=n-i;}for(int i=0;i<=n-2;i++){ //这是对1到n-2项的处理if(a[i]>0&&i>=1)  //如果i==1代表是第一项,显然第一项是没必要输出“+”的。cout<<"+";if(a[i]!=0&&a[i]!=1&&a[i]!=-1){cout<<a[i]<<"x^"<<b[i];}if(a[i]==1){cout<<"x^"<<b[i];}if(a[i]==-1){cout<<"-x^"<<b[i];}}if(a[n-1]!=0){//对第n-1项的处理if(a[n-1]<0){if(a[n-1]!=-1)cout<<a[n-1]<<"x";if(a[n-1]==-1)cout<<"-"<<"x";}if(a[n-1]>0){if(a[n-1]!=1)cout<<"+"<<a[n-1]<<"x";if(a[n-1]==1)cout<<"+"<<"x";}}if(a[n]!=0){//对最后一项的处理if(a[n]<0)cout<<a[n];if(a[n]>0)cout<<"+"<<a[n];}return 0;}

💎朋友们,点赞收藏是我更新的动力,明天再见,拜拜!🔥🔥🔥