题解
2024-03-17 15:29:07
发布于:河北
1阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
	int n;
	scanf("%d", &n);
	int a[101] = { 0 };
	for (int i = 0; i <= n; i++)
    {
        scanf("%d", &a[i]);
    }
	for (int i = 0; i <= n; i++) 
    {
		if (a[0] && i == 0 && abs(a[i]) != 1)
        {
            printf("%dx^%d", a[i], n);
        }
		if (a[0] && i == 0 && abs(a[i]) == 1)
        {
			if (a[i] == 1)
            {
            	printf("x^%d", n);    
            }
			else 
            {
                printf("-x^%d", n);
            }
		}
		if (a[i] > 0 && i != n && i != 0 && i != n - 1 && abs(a[i]) != 1)
        {
			printf("+%dx^%d", a[i], n - i);
		}
		if (a[i] < 0 && i != n&&i!=n-1 && i != 0 && abs(a[i]) != 1) 
        {
			printf("%dx^%d", a[i], n - i);
		}
		if (a[i] && i != n  && i != 0 &&i!=n-1&& abs(a[i]) == 1) 
        {
			if (a[i] == 1)
            {
                printf("+x^%d", n - i);
            }	
			else
            {
                printf("-x^%d", n - i);
            }
		}
		if (i == n - 1 && a[i] > 0 && abs(a[i]) != 1)
        {
            printf("+%dx");
        }
		if (i == n - 1 && a[i] < 0 && abs(a[i]) != 1)
        {
            printf("%dx");
        }
		if (i == n - 1 && abs(a[i]) == 1) 
        {
			if (a[i] == 1)
            {
                printf("+x");
            }
			else
            {
                printf("-x");
            }
		}
		if (i == n && a[i] > 0)
        {
            printf("+%d", a[i]);
        }
		if (i == n  && a[i] < 0)
        {
            printf("%d", a[i]);
        }   
    }
	return 0;
}
这里空空如也

有帮助,赞一个