def solve(s):
    stack = []
    sign = ''
    for i in range(len(s)):
        if(s[i].isdigit()):
            intv = int(s[i])
            if(sign == '') or (sign == '+'):
                stack.append(intv)
            elif(sign == '-'):
                stack.append(-intv)
            elif(sign == '*'):
                temp = stack.pop()
                stack.append(temp*intv)
        else:
            sign = s[i]
    print(sum(stack))

while(True):
    string = input()
    if string == 'END':
        break
    solve(string)
我用栈的思想,为什么只有75%呢,楼主求解啊