{"raw_statement":[{"iden":"background","content":"小 $\\mathfrak{f}$ 和小 $\\mathfrak{g}$ 在玩猜数游戏，但是因为风声太大，他们听不清楚对方说的话……"},{"iden":"statement","content":"评测机在区间 $[1,n]$ 中等概率随机地选择一个整数 $x$，你的任务是猜测这个数。\n\n你可以每次给出一个 $[1,n]$ 中的整数 $y$，询问 $y$ 和 $x$ 的大小关系。你最多可以询问 $q$ 次。\n\n但是，由于某些原因，评测机有 $p\\%$ 的概率会出错。\n\n具体地说：\n\n- 如果 $y=x$，那么评测机返回 `=`。\n- 如果 $y\\ne x$，且当前已经是第 $q$ 次询问，那么评测机返回 `!`。\n- **得到以上两种结果后，你应当停止询问。**\n- 如果 $y>x$，那么评测机有 $(100-p)\\%$ 的概率返回 `>`，有 $p\\%$ 的概率返回 `<`。\n- 如果 $y<x$，那么评测机有 $(100-p)\\%$ 的概率返回 `<`，有 $p\\%$ 的概率返回 `>`。\n\n每次询问，你需要向**标准输出**输出一个 $[1,n]$ 中的整数，**然后清空缓冲区**。\n\n你可以使用如下语句来清空缓冲区：\n\n- 对于 C/C++：`fflush(stdout)`；\n- 对于 C++：`std::cout << std::flush`；\n- 对于 Java：`System.out.flush()`；\n- 对于 Python：`stdout.flush()`；\n- 对于 Pascal：`flush(output)`；\n- 对于其他语言，请自行查阅对应语言的帮助文档。\n\n特别的，对于 C++ 语言，在输出换行时如果你使用 `std::endl` 而不是 `'\\n'`，也可以自动刷新缓冲区。\n\n然后你需要从**标准输入**中输入一个字符，代表评测机返回的结果。"},{"iden":"input","content":"开始询问之前，一行，三个用空格分隔的整数 $n,p,q$。\n\n对于每一次询问，一行，一个字符，一定是 `=`，`!`，`>`，`<` 四者之一。"},{"iden":"output","content":"对于每一次询问，一行，一个 $[1,n]$ 中的整数。"},{"iden":"note","content":"**样例 $1$ 解释：**\n\n此时该测试点的状态为 `AC`。\n\n**样例 $2$ 解释：**\n\n$x=37,y=50$ 时，$y>x$，有 $10\\%$ 的概率输出 `<`，恰好输出了 `<`。\n\n**样例 $3$ 解释：**\n\n此时该测试点的状态为 `WA`。\n\n**本题采用捆绑测试。**\n\n每个 Subtask 下设有 $5$ 个测试点，你只需通过其中**至少 $3$ 个**测试点即可得到该 Subtask 对应的分数。\n\n本题不使用子任务依赖。\n\n对于所有数据，$n=10^{18}$。\n\n| 编号 | 分值 | $p=$ | $q=$ | 时限 |\n| :----------: | :----------: | :----------: | :----------: | :----------: |\n| $0$ | $5$ | $0$ | $60$ | $\\texttt{1s}$ |\n| $1$ | $10$ | $10$ | $500$ | $\\texttt{1s}$ |\n| $2$ | $10$ | $25$ | $2000$ | $\\texttt{1s}$ |\n| $3$ | $15$ | $25$ | $1000$ | $\\texttt{1s}$ |\n| $4$ | $20$ | $25$ | $700$ | $\\texttt{1s}$ |\n| $5$ | $10$ | $25$ | $400$ | $\\texttt{1s}$ |\n| $6$ | $10$ | $40$ | $2500$ | $\\texttt{1s}$ |\n| $7$ | $10$ | $45$ | $10000$ | $\\texttt{1s}$ |\n| $8$ | $5$ | $48$ | $62500$ | $\\texttt{3s}$ |\n| $9$ | $5$ | $49$ | $250000$ | $\\texttt{10s}$ |"}],"translated_statement":null,"sample_group":[["100 0 10\n\n>\n\n<\n\n=","\n50\n\n25\n\n37"],["100 10 10\n\n<\n\n<\n\n=","\n50\n\n25\n\n37"],["100 0 2\n\n>\n\n!","\n50\n\n25"]],"show_order":[],"formal_statement":null,"simple_statement":null,"has_page_source":false}