| Kotlin Heroes: Episode 12 |
|---|
| Закончено |
Это интерактивная задача.
В некой базе данных хранятся $$$n$$$ хэндлов в виде пронумерованного списка. Вас интересует один определенный хэндл $$$h$$$, а точнее, его позиция в данном списке.
Вы можете спросить у базы позицию $$$i$$$ из списка, и она вернет вам хэндл, находящийся на $$$i$$$-й позиции.
Все хэндлы — это непустые строки, состоящие из не более $$$20$$$ строчных букв латинского алфавита, за исключением первой буквы, которая также может быть заглавной буквой латинского алфавита.
Вы знаете, что все хэндлы отсортированы в лексикографическом порядке, но проблема в том, что неизвестно, считаются ли заглавные буквы меньше строчных. Другими словами, вы не знаете, правда ли, что сначала идут все хэндлы, начинающиеся с заглавных букв, а потом со строчных. Или же наоборот, сначала идут все хэндлы, начинающиеся со строчных букв, а только потом с заглавных.
Лексикографический порядок — это порядок стандартного сравнения строк, формально определяемый следующим образом:
Из-за проблем с доступом к базе данных вы можете сделать не более $$$10$$$ запросов к ней. Определите, на какой позиции стоит интересующий вас хэндл, если известно, что он точно есть в списке.
В первой строке заданы число $$$n$$$ и строка $$$h$$$ ($$$1 \le n \le 500$$$) — общее количество хэндлов в списке и хэндл, который вы ищете.
Гарантируется, что все хэндлы — это непустые строки длиной не более $$$20$$$ символов, состоящие только из строчных букв латинского алфавита, за исключением первой буквы, которая может быть заглавной.
Также гарантируется, что все хэндлы отсортированы, уникальны, и искомый хэндл точно содержится в списке.
Чтобы задать вопрос, выведите строку в следующем формате (без кавычек):
Жюри вернёт строку $$$s$$$ — хэндл на $$$i$$$-й позиции в списке.
Когда вы будете готовы напечатать ответ, выведите одну строку в следующем формате (без кавычек):
Интерактор не адаптивен, что означает, что в каждом тесте список хэндлов является фиксированным.
Если ваша программа сделает более $$$10$$$ запросов (без учета ответа) или нарушит формат запросов, жюри ответит строкой «-1». В таком случае ваша программа должна немедленно завершиться, чтобы получить вердикт Неправильный ответ. В противном случае вы можете получить произвольный вердикт, потому что ваше решение продолжит читать из закрытого потока.
После печати запроса не забудьте вывести конец строки и сбросить вывод. В противном случае вы можете получить вердикт Решение «зависло». Для этого используйте System.out.flush().
4 adedalic Bleddest Neon adedalic awoo
? 1 ? 2 ? 3 ? 4 ! 3
6 tourist jiangly tourist Radewoosh
? 1 ? 3 ? 6 ! 3
Обратите внимание, что пробелы в примерах добавлены только для улучшения читаемости. При проверке решений интерактор пустых строк выводить не будет.
| Название |
|---|


