Наша программа принимает на вход последовательность скобочных символов. Ваша задача определить является ли введенная скобочная последовательность правильной.
Правильная скобочная последовательность (ПСП) называется строка, состоящая только из символов «скобки», где каждой закрывающей скобке найдётся соответствующая открывающая (причём того же типа). При этом учитывайте, что:
— Пустая последовательность является правильной.
— Если A – правильная скобочная последовательность, то (A), [A] и {A} – правильные скобочные последовательности.
— Если A и B – правильные скобочные последовательности, то AB – правильная скобочная последовательность.
— Если введенная строка является ПСП, выведите YES, в противном случае — NO.
от

1 Ответ

pairs = {'()', '[]', '{}'}     # список открывающихся и закрывающихся скобок
str = input().replace(' ', '') # получаем список и чистим его от пробелов

for _ in range(len(str)//2):   # полученную строку делим пополам т.к при нахождении удаляется сразу 2 символа
    for i in pairs:            # в цикле бежим по заготовленному списку скобок
        str = str.replace(i, '') # если нашли пару удаляем ее из строки
        
if len(str)==0:
    print('YES')
else:
    print('NO')
от