![](http://www.lfyzit.com:8888/uploads/big/dfaa73126ce428d8228f6e265236f51f.png)
by CT_Res @ 2018-10-05 17:40:51
……………………………………
by mabangjie @ 2018-11-05 13:21:06
```
if(a[i]==1&&n2==0) cout<<1;
```
这里漏了一种情况。如果给一组输入数据:
```
3
2 3 4 -1
```
你会发现输出的是
```
2x^3+3x^2+4x-
```
所以应该改成
```
if(abs(a[i])==1&&n2==0)cout<<1;
```
如果还有错可以参考一下我的代码
```
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,a,i;
cin>>n;
for(i=0;i<=n;i++)
{
cin>>a;
if(a!=0)
{
if(i!=0&&a>0)cout<<'+';
if(i!=n)
{
if(a==-1)cout<<'-';
else if(a!=1)cout<<a;
cout<<'x';
if(i!=n-1)cout<<'^'<<n-i;
}
else cout<<a;
}
}
return 0;
}
```
看还有什么漏了。
这道题考的就是细心。
by 赫敏·东方延绪 @ 2019-01-26 13:57:04