这题和P1022 计算器的改良有许多相似之处
都是分割到最小单元然后进行操作
另附我受益颇多的一篇该题的题解
#include <iostream>
using namespace std;
int main(){
int n;
cin>>n;
int a[n+1]={0};
for(int i=n;i>=0;i--)
cin>>a[i];
for(int i=n;i>=0;i--){
if(a[i]!=0){
if(a[i]<0) cout<<'-';
else if(i!=n) cout<<'+';
if(abs(a[i])!=1||i==0) cout<<abs(a[i]);
if(i!=0) cout<<'x';
if(i==1||i==0) continue;
else cout<<'^'<<i;
}
}
return 0;
}//c++11