洛谷普及训练场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;
}
本文详细解析洛谷普及训练场P1067题目——多项式输出的解题思路与C++代码实现。通过模拟算法处理多项式的输出,特别关注系数为1或0时的不同表现形式,确保输出符合数学表达规范。
586

被折叠的 条评论
为什么被折叠?



