import sys
time=int(input())
array=list(map(int,input().split()))
result=[]
for i in range(time+1):
    middle=[]
    #系数部分
    if array[i]==0:
        continue
    elif abs(array[i])==1:
        if array[i]<0:
            middle.append('-')
        else:
            middle.append('+')
    else:
        if array[i]<0:
            middle.append(str(array[i]))
        else:
            gh='+'+str(array[i])
            middle.append(gh)
    #系数后半部分
    if (time-i)==0:
        middle.append('1')
        #次数为0时需判断系数绝对值是否为1,否则会重复相加
        if middle[0] =='+' or middle[0]=='-':
            result.append(''.join(middle))
        else:
            result.append(''.join(middle[0]))
    elif (time-i)==1:
        middle.append('x')
        result.append(''.join(middle))
    else:
        middle.append(f'x^{time-i}')
        result.append(''.join(middle))
result=''.join(result)
#判断字符串首是否为+,是的话省略
if result[0]=='+':
    print(result[1:])
else:
    print(result)
for line in sys.stdin:
    a = line.split()
    print(int(a[0]) + int(a[1]))