震惊!这道题居然能做出80分!!求助!!!

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

``` #include<iostream> #include<cstdio> using namespace std; int a[105],b; int main() { scanf("%d",&b); for(int i=0;i<=b;i++) scanf("%d",&a[i]); for(int i=0;i<=b;i++) { if(a[i]!=0) { if(i!=b&&i!=0&&i!=b-1) { if(a[i]==-1) printf("-x^%d",b-i); else if(a[i]==1) printf("+x^%d",b-i); else if(a[i]!=1&&a[i]!=-1) { if(a[i]<-1) printf("%dx^%d",a[i],b-i); else printf("+%dx^%d",a[i],b-i); } } else { if(i==b) { if(a[b]<=0) printf("%d",a[b]); else printf("+%d",a[b]); } else if(i==0) { if(a[0]==-1) printf("-x^%d",b); else if(a[0]==1) printf("x^%d",b); else printf("%dx^%d",a[0],b); } else if(i==b-1) { if(a[b-1]==1) printf("+x"); else if(a[b-1]==-1) printf("-x"); else if(a[b-1]<-1) printf("%dx",a[b-1]); else if(a[b-1]>1) printf("+%dx",a[b-1]); } } } else continue; } return 0; }
by TeddyWang @ 2020-02-23 11:06:36


标题党。。。
by LongDouble @ 2020-02-23 11:27:23


@[LongDouble](/user/199821) 所以我该怎么改代码(狗头保命)
by AdGats @ 2020-02-23 12:00:11


|