using namespace std;
vector<string>vec;
string s;
int e;
void solve() {
int n; cin >> n;
for (int i = 0; i <= n; i++) {
cin >> s;
if (s == "0") {
continue;
}
if (i!=n&&s == "-1") {
s.erase(s.begin() + 1);
}
else if (i != n && s == "1") {
s.clear();
}
e = n - i;
if (s[0] != '-' && !vec.empty()) {
s.insert(s.begin(), '+');
}
if (e == 1) {
s += "x";
}
if (e>1) {
s += "x^";
s.insert(s.end(), e + '0');
}
vec.push_back(s);
}
if (vec.empty()) {
cout << "0";
}
for (int i = 0; i < vec.size(); i++) {
cout << vec[i];
}
}
int main(){
std::ios::sync_with_stdio(false);
std::cin.tie(0); std::cout.tie(0);
solve();
return 0;
}