这题没什么好说的,就是判断,需要考虑仔细一点。
AC代码:
#include <bits/stdc++.h>
using namespace std;
const int N = 712;
int main()
{
stringstream eq;
int coe[N];
int n;
cin >> n;
memset(coe, -1, sizeof(coe));
for (int i = 0; i <= n; i++)
cin >> coe[i];
for (int i = 0; i <= n; i++)
{
if (coe[i] == 0)
{
if (coe[i + 1] > 0)
eq << "+";
continue;
}
if (coe[i] != 1 && coe[i] != -1 && i != n)
eq << coe[i];
if (coe[i] == -1 && i != n)
eq << '-';
if (i < n - 1)
eq << "x^" << n - i;
else if (i != n)
eq << 'x';
else
eq << coe[i];
if (coe[i + 1] > 0)
eq << "+";
}
cout << eq.str() << endl;
return 0;
}