#P6960. [NEERC 2017] Interactive Sort

    ID: 6117 Type: RemoteJudge 5000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>2017交互题Special JudgeICPC

[NEERC 2017] Interactive Sort

题目背景

这是一道 IO 交互题。

题目描述

Ivan wants to play a game with you. He took all integers from 11 to nn inclusive, shuffled them and then put all even numbers into array ee and all odd numbers into array oo .

Your task is to find arrays ee and oo .

You can ask Ivan questions of certain kind. Each question consists of two integers ii and jj . For each question Ivan says whether e[i]<o[j]e[i] < o[j] or not.

You can ask at most 300000300 000 questions.

Interaction Protocol

First, the testing system writes the integer n(1n10000)n (1 \le n \le 10 000) -- the number of integers Ivan used.

Your solution shall print requests of two types:

• “? i j”. 1in/2,1jn/21 \le i \le ⌊n/2⌋, 1 \le j \le ⌈n/2⌉. The testing system responds with the symbol <“<” if e[i]<o[j]e[i] < o[j] 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 ee and oo 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 300000300 000 requests of the first type.

For each test case the number nn is fixed and the numbers are shuffled using Java built-in shuffle functionwith fixed seed.

5
>
>
<
>
<
<

? 1 1
? 1 2
? 1 3
? 2 1
? 2 2
? 2 3
! 4 2 1 3 5