洛谷普及训练场P1067 多项式输出
题解:
一个简单的模拟,注意系数为1时与为0时在不同位置会出现不同效果
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,a[105];
cin>>n;
for(int i=n; i>=0; --i)
{
cin>>a[i];
}
for(int i=n; i>=0; --i)
{
if(i==n)
{
if(a[i]==0)
continue;
else if(a[i]<0)
{
if(a[i]==-1)
cout<<"-";
else
cout<<a[i];
}
else if(a[i]!=1)
cout<<a[i];
}
else if(i!=0)
{
if(a[i]==0)
continue;
else if(a[i]>0)
{
cout<<"+";
if(a[i]!=1)
cout<<a[i];
}
else
{
if(a[i]==-1)
cout<<"-";
else
cout<<a[i];
}
}
else
{
if(a[i]==0)continue;
else if(a[i]>0)
cout<<"+";
cout<<a[i];
}
if(i==0)
continue;
else if(i==1)
cout<<"x";
else
cout<<"x^"<<i;
}
return 0;
}