Есть текст реалезовать ! Python
Смайлики
Напишите программу, которая посчитает количество смайликов в заданном тексте.
Смайликом будем считать последовательность символов, удовлетворяющую условиям:
первым символом является либо ; (точка с запятой) либо : (двоеточие) ровно один раз
далее может идти символ – (минус) сколько угодно раз (в том числе символ минус может идти ноль раз)
в конце обязательно идет некоторое количество (не меньше одной) одинаковых скобок из следующего набора: (, ), [, ].
внутри смайлика не может встречаться никаких других символов.
Например, нижеприведенные последовательности являются смайликами:
:)
;-[
В то время как эти последовательности смайликами не являются (хотя некоторые из них содержат смайлики):
:-)]
;--
-)
::-(
:-()
В этой задаче требуется посчитать количество смайликов, содержащихся в данном тексте.
Входные данные
Вводится одна строка текста, которая может содержать маленькие латинские буквы, пробелы, символы, которые могут встречаться в смайликах. Длина строки не превышает 100 000 символов.
Выходные данные
Выведите одно число — количество смайликов, которые встречаются в тексте.
есть текст реалезовать !
начальное состояние - 0
движетесь в цикле по строке, если нашли : или ; переходим в состояние 1 (нашли начальный символ) - проверяем минус, пока найден минус идём по строке, если не минус - проверяем следующий символ - если он в наборе in ['(', ')', '[', ']'] - то увеличиваем счётчик смайликов, движемся по строке, пока символ в заданном наборе, если нет - переход в начальное состояние. первый символ тот, что не в наборе. Конец строки - выход.
Другие вопросы по: Информатика
Знаешь правильный ответ?
Есть текст реалезовать ! Python Смайлики Напишите программу, которая посчитает количество смайликов...
Популярные вопросы