Вы и некоторые друзья играете в боулинг. Всего N котлов. Тем не менее, есть только N- 1 стульев, в которых можно сидеть. Решение простое: кто бы ни повернулся в данный момент, не получает стул. Затем, когда их очередь заканчивается, они садятся в кресло человека, который идет дальше.
Давайте возьмем пример. Скажем , Вы назвали , и ваши четверо друзей называются B , C , D и E . Каждый игрок движется в алфавитном порядке, поэтому вы должны идти первым. Поскольку здесь 5 игроков, есть только 4 места. Ваши друзья сидят на четырех местах в таком порядке:
CEBD
Вы идете, и вы получите удар! Теперь очередь за Б , так что вы сидите на его стуле. Теперь это выглядит так:
CEAD
Б идет. Gutterball! Затем он сидит в C месте «s и C идет следующий ход.
ШАРИК
то C сидит в D стула «s.
Британская европейская авиатранспортная компания
и D сидит в кресле E
BDAC
и наконец, E сидит в вашем кресле.
BDEC
Вы заметите, что теперь место каждого (псевдо) перетасовано. Вы должны узнать, после X поворотов, кто будет где сидеть?
вход
Ваша программа должна получить от пользователя два ввода: строку и число. Никаких подсказок не требуется. Строка будет состоять из 1-51 буквенных символов (BZ и az) без повторов. Это порядок, в котором ваши друзья решили сесть. Там не будет заглавной буквы А, потому что это вы, и вы всегда идете первым. Количество будет общим количеством раундов (не игр), в которые вы и ваши друзья играете. Это число будет положительным и разумного размера (менее 1000).
Выход
Ваша программа должна распечатать порядок, в котором ваши друзья сидят после поворота X, и чей это ход. Так, например, если после поворота X порядок был BEDGCAHF, а настал черед Z , ваша программа должна напечатать именно это:
BEDGCAHF
It is Z's turn.
Вот несколько примеров ввода и вывода.
input: E, 4
E
It is A's turn.
input: E, 5
A
It is E's turn.
input: Bb, 2
AB
It is b's turn.
input: dgOPZXKDQYioHflFhpqzUsSaeILwckVNEtGTCJBvnruRyWMmjxb, 999
JNuvFDqjwEPVnMSlOWXgAZyGKordIRBtkamziphcUYbxfCsTQeH
It is L's turn.
правила
Все идут в алфавитном порядке, причем заглавные буквы имеют приоритет над строчными.
Это код-гольф, поэтому применяются стандартные лазейки, а заявки оцениваются в байтах .
{({}[()])({}<({}<(([])<{{}({}<>)<>([])}{}<>>)<>>)<>{({}[()]<({}<>)<>>)}{}<>>)}