有大佬帮忙看看吗嘤嘤嘤,第三个点wa了,感觉没问题

P1067 [NOIP2009 普及组] 多项式输出

我把你的代码里一些可以不用的括号去了 ``` include<iostream> using namespace std; int main() { int n; int a[101]; cin>>n; for(int i=0;i<=n;i++) cin>>a[i]; if(n==0) cout<<a[0]; else { if(a[0]==0) cout<<""; else if(a[0]==1) cout<<"x^"<<n; else if(a[0]==-1) cout<<"-x^"<<n; else cout<<a[0]<<"x^"<<n; for(int i=1;i<n-1;i++) { if(a[i]==0) cout<<""; if(a[i]>0) { if(a[i]==1) cout<<"+"<<"x^"<<n-i; else cout<<"+"<<a[i]<<"x^"<<n-i; } if(a[i]<0) { if(a[i]==-1) cout<<"-"<<"x^"<<n-i; else cout<<a[i]<<"x^"<<n-i; } } if(a[n-1]>0) cout<<"+"<<a[n-1]<<"x"; else if(a[n-1]==0) cout<<""; else cout<<a[n-1]<<"x"; if(a[n]>0) cout<<"+"<<a[n]<<endl; else if(a[n]==0) cout<<""; else cout<<a[n]<<endl; } return 0; } ``` 然后我发现这段漏了情况 ``` if(a[n-1]>0) cout<<"+"<<a[n-1]<<"x"; else if(a[n-1]==0) cout<<""; else cout<<a[n-1]<<"x"; ``` 我随便写几组数据: ``` 2 2 -1 3 3 4 9 1 -3 ``` 输出分别是这样的 ``` 2x^2-1x+3 4x^3+9x^2+1x-3 ``` 出现了1x,所以会错 放链接 https://www.luogu.org/discuss/show/69695
by 赫敏·东方延绪 @ 2019-01-26 14:46:03


哦哦哦
by __01 @ 2019-03-02 11:04:13


@[赫敏·东方延绪](/space/show?uid=150391) Hhh阿里嘎多,我也是漏了这里wa的第三~
by 天然呆233 @ 2019-08-28 14:44:42


|