Universal Cup Judging System

Universal Cup

Time Limit: 1 s Memory Limit: 2048 MB Total points: 100 Difficulty: [show] Interactive Hackable ✓
Statistics

Это интерактивная задача.

У Маленькой Циановой Рыбки (Little Cyan Fish) есть секретное целое число $a$ ($1 \le a \le 100$). Вам нужно найти это число.

За один запрос вы выбираете целое число $x$. Маленькая Циановая Рыбка сообщает вам, равно ли $x$ её секретному числу. Найдите секретное число не более чем за $100$ запросов.

Протокол взаимодействия

Чтобы сделать запрос, выведите строку в следующем формате: «$?\ x$», где $x$ — целое число ($1 \le x \le 100$). В ответ на запрос вы получите одно слово yes или no, означающее, что $x = a$ или $x \ne a$ соответственно. Вы должны гарантировать, что количество сделанных вами запросов не превышает $100$.

Чтобы сообщить ответ, выведите строку в следующем формате: «$!\ x$», где $x$ — секретное целое число. Сообщение ответа не считается запросом. Получение yes не завершает взаимодействие: вы всё равно должны сообщить ответ. Ваша программа должна немедленно завершить работу после сообщения ответа. После вывода запроса или сообщения ответа не забудьте вывести символ перевода строки и сбросить буфер вывода (flush).

В этой задаче интерактор не является адаптивным. Секретное число фиксируется до начала взаимодействия и не меняется в ходе взаимодействия.

Примеры

Входные данные 1

no

no

yes

Выходные данные 1

? 1

? 2

? 3

! 3

Примечание

В первом примере секретное число равно $3$. Запросы с $x = 1$ и $x = 2$ получают ответ no, а запрос с $x = 3$ получает ответ yes. Затем решение сообщает ! 3.

Во втором примере секретное число равно $1$. Первый запрос получает ответ yes, и решение сообщает ! 1.

Инструмент для тестирования: Для помощи участникам в разработке и тестировании решений предоставляется инструмент для тестирования. Вы можете скачать этот инструмент из вложений. Запуск инструмента с опцией -h описывает, как им пользоваться. Инструмент проверяет взаимодействие и сообщённый ответ, но не контролирует ограничения по времени и памяти.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.