#P6960. [NEERC2017] Interactive Sort
[NEERC2017] Interactive Sort
题目背景
这是一道 IO 交互题。
题目描述
Ivan wants to play a game with you. He took all integers from to inclusive, shuffled them and then put all even numbers into array and all odd numbers into array .
Your task is to find arrays and .
You can ask Ivan questions of certain kind. Each question consists of two integers and . For each question Ivan says whether or not.
You can ask at most questions.
Interaction Protocol
First, the testing system writes the integer -- the number of integers Ivan used.
Your solution shall print requests of two types:
• “? i j”. . The testing system responds with the symbol if or with the symbol otherwise.
• “!\ $e_1\ e_2\ \cdots e_{⌊n/2⌋}\ o_1\ o_2 \cdots o_{⌈n/2⌉}$” tells the values of and that your program has determined.
Don't forget to flush the output after each request!
Your solution must issue exactly one request of the second type, which must be the last request, and thesolution must terminate gracefully after issuing it.
Your solution is allowed to issue at most requests of the first type.
For each test case the number is fixed and the numbers are shuffled using Java built-in shuffle functionwith fixed seed.
题目大意
有一个长度为 的排列,所有奇数组成的序列设为 ,所有偶数组成的序列设为 。
你可以进行不超过 次询问 ? i j
,每次交互库会返回一个 <
或 >
表示 和 的大小关系,最后你需要求出 并输出,格式为 ! e o
。
保证数据随机。
5
>
>
<
>
<
<
? 1 1
? 1 2
? 1 3
? 2 1
? 2 2
? 2 3
! 4 2 1 3 5