#include <stdio.h>

int main() {
    int n;
    scanf("%d\n", &n);
    int a[n + 1];
    for (int i = n; i >= 0; --i) {
        scanf("%d", &a[i]);
    }
    int firstItem = 1;
    for (int i = n; i >= 0; --i) {
        if (a[i] == 0) {
            continue;
        }
        // 符号
        if (a[i] > 0) {
            if (firstItem) {
                firstItem = 0;
            } else {
                putchar('+');
            }
        } else if (a[i] < 0) {
            firstItem = 0;
            putchar('-');
        }
        // 系数绝对值
        if (a[i] < -1 || a[i] > 1) {
            printf("%d", a[i] > 0 ? a[i] : -a[i]);
        } else if (i == 0) {
            putchar('1');
        }
        // x^k
        if (i > 1) {
            printf("x^%d", i);
        } else if (i == 1) {
            putchar('x');
        }
    }
    return 0;
}