题解带思路
2024-01-22 09:39:51
发布于:上海
8阅读
0回复
0点赞
代码呈现
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int n;
cin>>n;
int xishu;
cin>>xishu;
if(xishu!=0){
if(xishu!=1&&xishu!=-1)cout<<xishu;
if(xishu==-1)cout<<"-";
if(abs(xishu)==1&&n==0)cout<<1;
if(n>0)cout<<"x";
if(n>1)cout<<"^";
if(n>1)cout<<n;
}
while(n){
n--;
cin>>xishu;
if(xishu!=0){
if(xishu>0)cout<<"+";
if(xishu!=1&&xishu!=-1)cout<<xishu;
if(xishu==-1)cout<<"-";
if(abs(xishu)==1&&n==0)cout<<1;
if(n>0)cout<<"x";
if(n>1)cout<<"^";
if(n>1)cout<<n;
}
}
return 0;
}
思路分析
首先,我们可以判断系数是否为0,如果是,则不输出任何东西
其次,我们要看系数是否为±1,如果不是,则照常输出系数
如果是,分为两种情况,一种是指数为0,那么是照常输出的
另一种是指数不为0,都知道1作为未知数系数时省略,所以不输出
接着我们看指数,指数为0时不输出x和^0,因此这里要做个判断
还有指数的特别情况是指数为1,是不输出x^1而单独输出x的,再做个判断
其余照常
这里空空如也
有帮助,赞一个