Правильная скобочная последовательност Рассмотрим последовательность, состоящую из круглых, квадратных и фигурных скобок. Программа должна определить, является ли данная скобочная последовательность правильной Пустая последовательность является правильной. Если A правильная, то последовательности (A), [A], {A} правильные. Если A и B правильные последовательности, то последовательность AB правильная Входные данны В единственной строке записана скобочная последовательность, содержащая не более 100000 скобок Выходные данны Если данная скобочная последовательность правильная, то программа должна вывести строку yes, иначе — строку no Пример Вво Выво ([] ye { no
def is_valid(sequence) stack = [ brackets = {'(': ')', '[': ']', '{': '}' for char in sequence if char in brackets.keys() stack.append(char elif char in brackets.values() if not stack or brackets[stack.pop()] != char return "no if stack return "no return "yes sequence = input( print(is_valid(sequence))
stack = [
brackets = {'(': ')', '[': ']', '{': '}'
for char in sequence
if char in brackets.keys()
stack.append(char
elif char in brackets.values()
if not stack or brackets[stack.pop()] != char
return "no
if stack
return "no
return "yes
sequence = input(
print(is_valid(sequence))