本地过了
#include <bits/stdc++.h>
using namespace std;
int n;
int a[100002];
int main()
{
cin>>n;
for(int i=1;i<=n+1;i++)
{
cin>>a[i];
}
for(int i=1;i<=n;i++)
{
if(i==1)
{
cout<<a[i]<<'x'<<'^'<<n-i+1;
}
if(a[i]>0 && a[i]!=1 && a[i]!=0 && i!=1)
{
cout<<'+'<<a[i]<<'x'<<'^'<<n-i+1;
}
else if(a[i]<0 && a[i]!=-1 && a[i]!=0 && i!=1)
{
cout<<a[i]<<'x'<<'^'<<n-i+1;
}
else if(a[i]>0 && a[i]==1 && i!=1)
{
cout<<'+'<<'x'<<'^'<<n-i+1;
}
else if(a[i]<0 && a[i]==-1 && a[i]!=0 && i!=1)
{
cout<<'-'<<'x'<<'^'<<n-i+1;
}
}
if(a[n+1]>0)
{
cout<<'+';
}
if(a[n+1]!=0)
{
cout<<a[n+1];
}
return 0;
}