笔试-投篮比赛

应用

现在有一场特殊投篮积分制比赛,开始时,记分员得到一个用于记录操作的列表,元素均为字符串,规则如下:
整数:本回合新获得分数;
+:本回合新获得分数是前2次得分的总和:
D:本回合新获得分数是前一次得分的2倍;
C:本回合没有分数、前一次得分移除;
请计算得分总和。

实现

str = input("请输入字符串列表,以空格分隔元素:").split()
ops = [i for i in str]
score = []
sum = 0

for i in ops:
    match i:
        case "+":
            score.append(score[-2] + score[-1])
        case "D":
            score.append(2 * score[-1])
        case "C":
            score.remove(score[-1])
        case _:
            score.append(int(i))

for i in score:
    sum = sum + i
print(sum)
请输入字符串列表,以空格分隔元素:5 2 C D +
30

你可能感兴趣的:(算法与数据结构,python)