You have just completed a brave journey to see The Wizard of Odds, who agrees to grant you any wish, so long as you can complete the following puzzle:
The Wizard starts by telling you two integers: and
. He then
secretly selects a number from
to
(inclusive), and does not tell
you this number.
Your goal is to correctly guess the secret number. Before guessing, you
are allowed to ask "true/false" questions about the number, for
example, "Is the number even?" or "Is the number between 7 and 10?",
or "Is the number 17 or 22?", or "Is the number prime?". And the
Wizard will answer with "true" or "false" to each question. The Wizard
will always answer honestly. After answering the
questions, you must
guess the number. If you win (guess the number correctly), you will be
granted your wish; but if the Wizard wins (you guess incorrectly), you
will be turned into a flying monkey.
(Formally, you can think of a "question" as a function from to
, and the Wizard will
answer by telling you whether the value of the function is true or
false for his secret number.)
Assuming that you have been told and
, can you always exactly
determine the Wizard's secret number (and guarantee that you win) using
only
questions?
Input Specification
The input consists of a single line containing two integers and
, separated by a single space.
Note: These inputs might NOT fit into a 64-bit integer.
Output Specification
Output Your wish is granted!
if it is possible
for you to guarantee that you win the game (regardless of the number the
Wizard picks). Otherwise, print You will become a flying monkey!
if it is not possible.
Sample Input 1
8 3
Sample Output 1
Your wish is granted!
Sample Input 2
1234567890987654321 2
Sample Output 2
You will become a flying monkey!
Deon Nicholas
Comments