Предмет: Информатика, автор: Nastiaonelove

Окунёмся в суровый и беспощадный мир очереди на приём к врачу в поликлинике. Напишем программу-медсестру, которая поможет врачу определить, кто следующий проходит к нему в кабинет.

Изначально в очереди никого нет. Далее в каком-то порядке происходят события трёх типов:

фраза «Кто последний? Я - <фамилия>.» означает, что пришёл новый пациент и встал в конец очереди;
фраза «Я только спросить! Я - <фамилия>.» означает, что пришёл новый пациент и встал в начало очереди;
фраза «Следующий!» означает, что доктор готов принять первого пациента в очереди.
В последнем случае нужно вывести «Заходит <фамилия>!» или «В очереди никого нет.»

На психологическую достоверность данная модель очереди, конечно, не претендует: в жизни такое нахальство с «я только спросить» прощается далеко не всегда.

Формат ввода
На первой строке вводится натуральное число N — количество событий.
Далее следуют N строк описанного в условии формата.

Формат вывода
Выводится несколько строк, по одной на каждое «Следующий!» в вводе, в соответствии с условием в порядке общей очереди.

Пример
Ввод
7
Кто последний? Я - Кузнецов.
Кто последний? Я - Поливанов.
Следующий!
Я только спросить! Я - Иванова.
Следующий!
Следующий!
Следующий!
вывод
Заходит Кузнецов!
Заходит Иванова!
Заходит Поливанов!
В очереди никого нет.
питон

Ответы

Автор ответа: Аноним
3

Python 3.7.0

Лови, прикрепил фото с результатами, посмотри(т.е сразу выводит, после "следующий")


count = int(input("Количество событий: "))

queue = []      # очередь

for i in range(count):

   event = input()

   if "Кто последний?" in event:

       queue.append(event[19:len(event) - 1])

   if "Я только спросить!" in event:

       queue.insert(0, event[23:len(event) - 1])

   if "Следующий!" in event:

       if queue:

           print("Заходит " + queue.pop(0) + "!")

       else:

           print("В очереди никого нет.")

Приложения:
Похожие вопросы
Предмет: Алгебра, автор: fttima
Предмет: Алгебра, автор: Kola4509g