Решение по шагам.
Обозначим порядок четырех гномов, которые уже стояли в очереди перед Допом, слева направо. Пусть этот порядок будет [a, b, c, d], где a — первый в очереди, d — последний.
Условия задачи:
Если Доп стал бы посередине очереди (то есть на позиции 3 в очереди из пяти), он оказался бы между Хопом и Топом, причем Хоп перед Допом, а Топ за ним. Это значит, что в текущем порядке перед Допом гномы на местах 2 и 3 должны быть Хоп и Топ соответственно. То есть b = Хоп и c = Топ. => текущий порядок четырех гномов имеет вид [a, Хоп, Топ, d].
Если Доп стал бы в конец очереди, рядом с ним бы оказался Кноп. Это значит, что последний из четырех гномов (d) должен быть Кноп. => d = Кноп.
- Совместимы оба условия: из первого получаем [a, Хоп, Топ, d], из второго d = Кноп. Значит d = Кноп, и остаётся a = оставшийся гном, который не Хоп, не Топ, не Кноп — это Роп.
Следовательно, исходный порядок четырех перед Допом таков: Rоп, Хоп, Топ, Кноп.
- Теперь Доп становится на самое начало очереди. Тогда финальный порядок слева направо будет: Доп, Роп, Хоп, Топ, Кноп.
Проверка:
- Если Доп стал бы в середине, получаем очередь: Роп, Хоп, Доп, Топ, Кноп — между Хопом и Топом, Хоп перед Допом, Топ за ним. Совпадает.
- Если Доп стал бы в конец, получаем очередь: Роп, Хоп, Топ, Кноп, Доп — рядом с Допом слева Кноп, что тоже совпадает.
- В реальном сценарии Доп стоит в начале: Доп, Роп, Хоп, Топ, Кноп.
Ответ: кто за кем стоит (слева направо, от начала к концу очереди): Доп, Роп, Хоп, Топ, Кноп.