#include <bits/stdc++.h>
int main() {
int m, n;
bool isFirst = true;
scanf("%d", &n);
while (n > 0) {
scanf("%d", &m);
if (m != 0) {
if (isFirst) {
isFirst = false;
if (m == 1) {
if (n == 1) printf("x");
else printf("x^%d", n);
}
else if (m == -1) {
if (n == 1) printf("-x");
else printf("-x^%d", n);
}
else {
if (n == 1) printf("%dx", m);
else printf("%dx^%d", m, n);
}
}
else {
if (m == 1) {
if (n == 1) printf("+x");
else printf("+x^%d", n);
}
else if (m == -1) {
if (n == 1) printf("-x");
else printf("-x^%d", n);
}
else {
if (n == 1) printf("%+dx", m);
else printf("%+dx^%d", m, n);
}
}
}
n--;
}
scanf("%d", &m);
if (m != 0) {
if (isFirst) {
printf("%d", m);
}
else {
printf("%+d", m);
}
}
if (isFirst && m == 0) {
printf("0");
}
return 0;
}