华为od6天

tokens=input()
result=list()
for token in tokens:
    if token in "+-*/":
        left=result.pop()
        right=result.pop()
        if token == "+":
            ans = left + right
            result.append(ans)
        elif token == "-":
            ans = left - right
            result.append(ans)
        elif token == "*":
            ans = left * right
            result.append(ans)
        elif token == "/":
            ans = int(left / right)
            result.append(ans)
    else:
        result.append(int(token))
print(result[0])

input得写在函数外面

先input了若干内容 存在tokens里

再把tokens传入函数

没有调用函数哦

前面只是定义了函数

append的是int(token)

因为这时候token是字符串形式的数字 你得把数字存进stack里

而且做完加减乘除后的结果 也没有入栈

就是lc上是不用自己输入数据和处理

acm需要输入数据和处理而已

lc中的tokens是一个列表

遍历tokens是遍历这个列表 就没啥问题

所以这道题如果要出成ACM模式的话 输入的串 数字和符号之间是要用空格隔开的

所以输入的时候是这样写 tokens = input().split()

但是在ide里 class solution可加可不加

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值