1102. Странный диалог Ограничение времени: 1.0 секунды Ограничение памяти: 16 МБ Одна сущность по имени "one" беседует со своим другом, сущностью "puton", и нас интересует их разговор. "One" может говорить слова "out" и "output", кроме того, он может
- Программирование
Условие:
1102. Странный диалог
Ограничение времени: 1.0 секунды
Ограничение памяти: 16 МБ
Одна сущность по имени "one" беседует со своим другом, сущностью "puton", и нас интересует их разговор. "One" может говорить слова "out" и "output", кроме того, он может называть своего друга по имени. "Puton" может говорить слова "in", "input" и "one". Они прекрасно понимают друг друга и даже пишут диалоги в строки без пробелов между словами.
Дано N строк. Определите, какие из них являются диалогами.
Исходные данные
В первой строке ввода содержится целое число N (1 ≤ N ≤ 1000). Следующие N строк содержат непустые последовательности строчных латинских букв. Длина каждой строки не превышает 4 · 106 символов, общая длина всех строк не превышает 8 · 106 символов.
Результат
Вывод состоит из N строк. Строка содержит слово "YES", если соответствующая строка ввода является некоторым диалогом сущностей "one" и "puton", в противном случае строка содержит "NO".
Решение:
Для решения задачи необходимо определить, является ли каждая из N строк диалогом между двумя сущностями one и puton. Мы знаем, что one может говорить слова out, output и называть своего друга puton, а puton может говорить слова in, input и называть своего друга one.
Шаги решения:
1. Определение допустимых слов:
- Слова, которые может произнести one: out, output, puton.
- Слова, которые может произнести puton: in, input, one.
2. Создание регулярного выражения:
- Мы можем использовать регулярные выражения для проверки, состоит ли строка только из допустимых слов.
- Составим регулярное выражение, которое будет соответствовать любому количеству повторений допустимых слов:
(out|output|puton|in|input|one)*
3. Проверка каждой строки:
- Для каждой строки из входных данных проверяем, соответствует ли она регулярному выражению.
- Если строка соответствует, выводим YES, иначе NO.
4. Реализа...: - Считываем количество строк N. - Считываем каждую строку и проверяем её с помощью регулярного выражения. - Мы используем модуль для работы с регулярными выражениями. - Сначала считываем количество строк. - Затем для каждой строки проверяем, соответствует ли она нашему регулярному выражению. - Если строка соответствует, добавляем YES в список результатов, иначе NO. - В конце выводим все результаты. Таким образом, мы можем эффективно определить, является ли каждая строка диалогом между one и puton, используя регулярные выражения для проверки допустимых слов.
Похожие задачи
Не нашел нужную задачу?
Воспользуйся поиском
Выбери предмет
- Правоохранительные органы
- Пожарная безопасность
- Парикмахерское искусство
- Природообустройство и водопользование
- Почвоведение
- Приборостроение и оптотехника
- Промышленный маркетинг и менеджмент
- Производственный маркетинг и менеджмент
- Процессы и аппараты
- Программирование
- Право и юриспруденция
- Психология
- Политология
- Педагогика
- Трудовое право
- Теория государства и права (ТГП)
- Таможенное право
- Теория игр
- Текстильная промышленность
- Теория вероятностей
- Теоретическая механика
- Теория управления
- Технология продовольственных продуктов и товаров
- Технологические машины и оборудование
- Теплоэнергетика и теплотехника
- Туризм
- Товароведение
- Таможенное дело
- Торговое дело
- Теория машин и механизмов
- Транспортные средства