{"trustable":true,"prependHtml":"\u003cstyle type\u003d\u0027text/css\u0027\u003e\n .input, .output {\n border: 1px solid #888888;\n }\n .output {\n margin-bottom: 1em;\n position: relative;\n top: -1px;\n }\n .output pre, .input pre {\n background-color: #EFEFEF;\n line-height: 1.25em;\n margin: 0;\n padding: 0.25em;\n }\n \u003c/style\u003e\n \u003clink rel\u003d\"stylesheet\" href\u003d\"//codeforces.org/s/96598/css/problem-statement.css\" type\u003d\"text/css\" /\u003e\n\u003cscript\u003e\n window.katexOptions \u003d {\n delimiters: [\n {left: \u0027$$$$$$\u0027, right: \u0027$$$$$$\u0027, display: true},\n {left: \u0027$$$\u0027, right: \u0027$$$\u0027, display: false},\n {left: \u0027$$\u0027, right: \u0027$$\u0027, display: true},\n {left: \u0027$\u0027, right: \u0027$\u0027, display: false}\n ]\n };\n\u003c/script\u003e\n","sections":[{"title":"","value":{"format":"HTML","content":"\u003cp\u003e\u003cspan class\u003d\"tex-font-style-bf\"\u003e这是一个交互式问题。\u003c/span\u003e\u003c/p\u003e\u003cp\u003e我们向你隐藏了一个长度为$$$n$$$的排列$$$p$$$,由元素$$$1$$$到$$$n$$$组成。你想要猜出这个排列。为了做到这一点,你可以给我们2个不同的索引$$$i$$$和$$$j$$$,然后我们会回复$$$p_{i} \\bmod p_{j}$$$(除以$$$p_{j}$$$的余数)。\u003c/p\u003e\u003cp\u003e我们有足够的耐心来回答最多$$$2 \\cdot n$$$个查询,所以你应该符合这个限制。你能做到吗?\u003c/p\u003e\u003cp\u003e作为提醒,长度为$$$n$$$的排列是一个由$$$n$$$个不同整数组成的数组,整数范围从$$$1$$$到$$$n$$$,顺序任意。例如,$$$[2,3,1,5,4]$$$是一个排列,但$$$[1,2,2]$$$不是排列($$$2$$$在数组中出现两次),$$$[1,3,4]$$$也不是排列($$$n\u003d3$$$但数组中有$$$4$$$)。\u003c/p\u003e"}},{"title":"输入","value":{"format":"HTML","content":"\u003cp\u003e输入的唯一一行包含一个整数$$$n$$$($$$1 \\le n \\le 10^4$$$)— 排列的长度。\u003c/p\u003e"}},{"title":"交互","value":{"format":"HTML","content":"\u003cp\u003e交互从读取$$$n$$$开始。\u003c/p\u003e\u003cp\u003e然后你可以以以下方式最多进行$$$2 \\cdot n$$$次查询:\u003c/p\u003e\u003cul\u003e\u003cli\u003e\"\u003cspan class\u003d\"tex-font-style-tt\"\u003e? x y\u003c/span\u003e\"($$$1 \\le x, y \\le n, x \\ne y$$$)。\u003c/li\u003e\u003c/ul\u003e\u003cp\u003e在每次查询后,你应该读取一个整数$$$k$$$,它等于$$$p_x \\bmod p_y$$$。\u003c/p\u003e\u003cp\u003e当你猜出排列时,打印一行 \"\u003cspan class\u003d\"tex-font-style-tt\"\u003e! \u003c/span\u003e\"(不带引号),后跟数组$$$p$$$,然后退出。\u003c/p\u003e\u003cp\u003e在打印查询后,不要忘记输出换行并刷新输出。否则,你会收到\u003cspan class\u003d\"tex-font-style-tt\"\u003eIdleness limit exceeded\u003c/span\u003e。要做到这一点,请使用:\u003c/p\u003e\u003cul\u003e\u003cli\u003e\u003cspan class\u003d\"tex-font-style-tt\"\u003efflush(stdout)\u003c/span\u003e 或 \u003cspan class\u003d\"tex-font-style-tt\"\u003ecout.flush()\u003c/span\u003e 在C++中;\u003c/li\u003e\u003cli\u003e\u003cspan class\u003d\"tex-font-style-tt\"\u003eSystem.out.flush()\u003c/span\u003e 在Java中;\u003c/li\u003e\u003cli\u003e\u003cspan class\u003d\"tex-font-style-tt\"\u003eflush(output)\u003c/span\u003e 在Pascal中;\u003c/li\u003e\u003cli\u003e\u003cspan class\u003d\"tex-font-style-tt\"\u003estdout.flush()\u003c/span\u003e 在Python中;\u003c/li\u003e\u003cli\u003e查看其他语言的文档。\u003c/li\u003e\u003c/ul\u003e\u003cp\u003e在收到\"\u003cspan class\u003d\"tex-font-style-tt\"\u003e-1\u003c/span\u003e\"后立即退出,否则你会看到\u003cspan class\u003d\"tex-font-style-tt\"\u003eWrong answer\u003c/span\u003e的判决。否则,你可能会收到任意判决,因为你的解决方案将继续从已关闭的流中读取。\u003c/p\u003e\u003cp\u003e\u003cspan class\u003d\"tex-font-style-bf\"\u003e黑客格式\u003c/span\u003e\u003c/p\u003e\u003cp\u003e在第一行输出$$$n$$$($$$1 \\le n \\le 10^4$$$)。在第二行打印$$$n$$$个整数的排列$$$p_1, p_2, \\ldots, p_n$$$。\u003c/p\u003e"}},{"title":"示例 1","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e3\n\n1\n\n2\n\n1\n\n0\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e? 1 2\n\n? 3 2\n\n? 1 3\n\n? 2 1\n\n! 1 3 2\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}