うちはサスケ726 2023-04-20 17:17 采纳率: 100%
浏览 109
已结题

zoj1094,请用python代码解决,需要在zoj上获得ac

  • 写回答

4条回答 默认 最新

  • 请叫我问哥 新星创作者: python技术领域 2023-04-21 14:34
    关注

    img

    img


    OK,过了,是我之前想多了,其实更简单

    代码如下:

    import sys
    s = sys.stdin.readlines()
    
    n = int(s[0].strip())
    matrixes = dict()
    for i in range(1, n+1):
        name, row, col = s[i].strip().split()
        matrixes[name] = (int(row), int(col))
    
    for i in range(n+1, len(s)):
        exp = s[i].strip()
        if exp == "": break
        if len(exp) == 1: print(0)
        else:
            ans = 0
            q = list()
            for i in exp:
                if i.isalpha(): q.append(list(matrixes[i]))
                elif i == ")":
                    b = q.pop()
                    a = q.pop()
                    if a[1] == b[0]:
                        ans += a[0]*b[0]*b[1]
                        a[1] = b[1]
                        q.append(a)
                    else:
                        print("error")
                        break
            else:
                print(ans)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月29日
  • 已采纳回答 4月21日
  • 赞助了问题酬金15元 4月20日
  • 创建了问题 4月20日