笔记草稿

题目描述

薯队长写了一篇笔记草稿,请你帮忙输出最后内容。
1.输入字符包括,"(" , ")" 和 "<"和其他字符。
2.其他字符表示笔记内容。
3.()之间表示注释内容,任何字符都无效。 括号保证成对出现。
4."<"表示退格, 删去前面一个笔记内容字符。括号不受"<"影响 。
输入描述:
输入一行字符串。长度<=10000.
输出描述:
输出一行字符串,表示最终的笔记内容。
输入例子1:
Corona(Trump)USA<<<Virus
输出例子1:
CoronaVirus

参考1:

思路:栈

if __name__ == '__main__':
    s=input().strip()
    a = []
    n = len(s)
    i = 0
    k, p = 0, 0
    while i < n:
        if k == p:
            if s[i] == '(':
                k += 1
            else:
                if s[i] == '<':
                    a.pop(-1)
                else:
                    a.append(s[i])
        else:
            if s[i] == '(':
                k += 1
            elif s[i] == ')':
                p += 1
        i += 1
    print(''.join(list(map(str,a))))

参考2:

s=input().strip()
a=[]
left=0
for i in s:
    if i=='(':
        left+=1
        continue
    if left:
        if i==')':
            left-=1
        continue
    if i=='<':
        a.pop()
    else:
        a.append(i)
s=''.join(a)
print(s)

猜你喜欢

转载自www.cnblogs.com/ai-learning-blogs/p/13390723.html
今日推荐