求助
P1067
60分
#include<bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;
const int N = 1e5+10;
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n;
cin>>n;
int fr[n+1];
for(int i=0;i<=n;i++){
cin>>fr[i];
}
if(fr[0]>0&&fr[0]!=1){
printf("%dx^%d",fr[0],n);
}
if(fr[0]<0&&fr[0]!=-1){
printf("%dx^%d",fr[0],n);
}
if(fr[0]==1){
printf("x^%d",fr[0],n);
}
if(fr[0]==-1){
printf("-x^%d",fr[0],n);
}
for(int i=1;i<=n-2;i++){
if(fr[i]==1){
printf("+x^%d",n-i);
continue;
}
if(fr[i]==-1){
printf("-x^%d",n-i);
continue;
}
if(fr[i]==0){
continue;
}
if(fr[i]<0){
printf("%dx^%d",fr[i],n-i);
continue;
}
if(fr[i]>0){
printf("+%dx^%d",fr[i],n-i);
continue;
}
}
if(fr[n-1]<0){
printf("%dx",fr[n-1]);
}
if(fr[n-1]>0){
printf("+%dx",fr[n-1]);
}
if(fr[n]<0){
printf("%d",fr[n]);
}
if(fr[n]>0){
printf("+%d",fr[n]);
}
return 0;
}