Помогите решить задачу пожалуйста
Дана последовательность, состоящая из открывающихся и закрывающихся круглых, квадратных и фигурных скобок.
Требуется написать программу, которая определит возможность добавления в эту последовательность цифр и знаков арифметических действий таким образом, чтобы получилось правильное скобочное выражение.
Входные данные
Входной файл INPUT.TXT содержит не менее 1 и не более 10 строк. В каждой строке записана одна последовательность скобок. Длина последовательности от 1 до 255 символов.
Выходные данные
В выходной файл OUTPUT.TXT выведите слитно символы 0 или 1. Их общее количество равно количеству введенных строк. Для каждой строки выводится 0, если из нее может получиться правильное скобочное выражение, и 1 иначе.
Пример
№ INPUT.TXT OUTPUT.TXT
1 ([{}])
([{ 01
def is_correct(s):
stack = []
for c in s:
if c in '([{':
stack.append(c)
else:
if not stack or stack.pop() != {'}': '}', ']': ']', ')': '('}[c]:
return False
return not stack
# Чтение входных данных
with open('INPUT.TXT', 'r') as f:
expressions = f.readlines()
# Обработка и запись результатов
with open('OUTPUT.TXT', 'w') as f:
for expr in expressions:
f.write('0' if is_correct(expr.strip()) else '1')