{"problem":{"name":"Tree Queries","description":{"content":"There is a tree with $N$ vertices, numbered $1, \\ldots, N$.   For each pair of integers $u,v\\, (1 \\leq u,v \\leq N)$, the distance $d_{u,v}$ between Vertices $u, v$ is defined as the following. *   Th","description_type":"Markdown"},"platform":"AtCoder","limit":{"time_limit":2000,"memory_limit":262144},"difficulty":"None","is_remote":true,"is_sync":true,"sync_url":null,"sign":"arc142_c"},"statements":[{"statement_type":"Markdown","content":"There is a tree with $N$ vertices, numbered $1, \\ldots, N$.  \nFor each pair of integers $u,v\\, (1 \\leq u,v \\leq N)$, the distance $d_{u,v}$ between Vertices $u, v$ is defined as the following.\n\n*   The number of edges contained in the shortest path connecting Vertices $u$ and $v$.\n\nYou are allowed to ask between $0$ and $2N$ questions (inclusive) in the following form.\n\n*   Ask the distance $d_{u,v}$ between Vertices $u,v$ for integers $u,v$ of your choice such that $1\\leq u,v \\leq N$ and $u+v>3$.\n\nFind the distance $d_{1,2}$ between Vertices $1,2$.\n\n## Constraints\n\n*   $3 \\leq N \\leq 100$\n*   $N$ is an integer.\n*   The tree is determined before the start of the interaction between your program and the judge.\n\n## Input And Output\n\n**This is an interactive task**, in which your program and the judge interact via input and output.\nFirst, your program is given a positive integer $N$ from Standard Input:\n\n$N$\n\nThen, you get to ask questions.  \nA question should be printed in the following format (with a newline at the end):\n\n? $u$ $v$\n\nIf the question is valid, the response $d_{u,v}$ is given from Standard Input:\n\n$d_{u,v}$\n\nIf the question is judged invalid because, for example, it is malformed or you have asked too many questions, you get `-1` instead of the response:\n\n\\-1\n\nAt this point, your submission is already judged incorrect. The judge's program then terminates; yours should too, desirably.\nWhen you find the answer $d_{1,2}$, print it to Standard Output in the following format (with a newline at the end):\n\n! $d_{1,2}$\n\n## Notices\n\n*   **Flush Standard Output after each output. Otherwise, you might get the TLE verdict.**\n*   After printing the answer (or receiving `-1`), immediately terminate the program normally. Otherwise, the verdict would be indeterminate.\n*   The verdict for the case of a malformed output would be indeterminate.\n*   Specifically, note that too many newlines would also be seen as a malformed output.\n\n[samples]","is_translate":false,"language":"English"}],"meta":{"iden":"arc142_c","tags":[],"sample_group":[],"created_at":"2026-03-03 11:01:14"}}