分类暴力枚举各种情况
AC代码:
#include<iostream>
#include<string>
#include<sstream>
using namespace std;
#include<vector>
int main()
{
int n;
vector<string>y;
cin >> n;
//vector<string>::iterator p;
int i;
for(i = 0; i <= n; ++i)
{
string temp;
cin >> temp;
y.push_back(temp);
}
for (i = n; i >= 0; --i)
{
stringstream ss;
ss << y[n - i];
int t;
ss >> t;
if (i == n)
{
if (t == -1)
{
cout << "-x^" << n;
}
else if (t == 1)cout << "x^" << n;
else if (t == 0)
{
continue;
}
else
{
cout << t << "x^" << n;
}
}
else if (i == 1)
{
if (t == 0)continue;
else if (t == 1)cout << "+x";
else if (t == (-1))cout << "-x";
else if (t > 0&&t!=1)cout << "+" << t << "x";
else if (t < 0&&t!=(-1))cout << t << "x";
}
else if (i == 0)
{
if (t > 0)cout << "+" << t;
else if (t == 0)continue;
else cout << t;
}
else
{
if (t == 0)continue;
else if (t == 1)cout << "+x^" << i;
else if (t == (-1))cout << "-x^" << i;
else if (t > 0&&t!=1)cout << "+" << t << "x^" << i;
else if (t < 0&&t!=(-1))cout << t << "x^" << i;
}
}
}