EduBrick

D. В поисках истины

1000 мс · 256 МБ · всё или ничего

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

Жюри загадало последовательность s1,…,sns_1, \ldots, s_n. Она строго возрастает до некоторой позиции, а затем строго убывает — одна из двух частей может быть пустой. Вы можете спрашивать значение любого элемента. Найдите какую-нибудь позицию со значением kk или сообщите, что такой нет, не более чем за 80 вопросов.

Формат ввода

В начале взаимодействия считайте два числа nn и kk (1≤n≤2⋅1051 \le n \le 2 \cdot 10^5, 1≤k≤1091 \le k \le 10^9).

Формат вывода

Чтобы спросить значение, выведите ? i (1≤i≤n1 \le i \le n) — в ответ придёт sis_i (1≤si≤1091 \le s_i \le 10^9).

Когда ответ найден, выведите ! i — позицию со значением kk, либо ! -1, если такой позиции нет. После этого завершите работу.

Вопросов не больше 80. После каждого вывода делайте flush.

Примеры

ввод
5 4
7
4
3
вывод
? 3
? 4
? 2
! 4
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.