CF1562F.Tubular Bells

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Do you know what tubular bells are? They are a musical instrument made up of cylindrical metal tubes. In an orchestra, tubular bells are used to mimic the ringing of bells.

Mike has tubular bells, too! They consist of nn tubes, and each of the tubes has a length that can be expressed by a integer from ll to rr inclusive. It is clear that the lengths of all the tubes are different (it makes no sense to make the same tubes). It is also known that rl+1=nr-l+1 = n .

Formally, we can say that Mike's tubular bells are described by a permutation aa of length nn that contains all numbers from ll to rr inclusive, with aia_i denoting the length of the ii -th tube.

You are offered an interesting task: to guess what Mike's instrument looks like. Simply, you must guess the permutation.

Mike won't tell you ll or rr . He will only tell you nn , and will allow you to ask no more than n+5000n + 5000 queries.

In each query, you name two positive integers xx , yy such that 1x,yn,xy1 \le x, y \le n, x \neq y . In response to this query, the program written by Mike will give you lcm(ax,ay)\mathrm{lcm}(a_x, a_y) , where lcm(c,d)\mathrm{lcm}(c,d) denotes the least common multiple of cc and dd .

Solve Mike's problem!

输入格式

Each test contains multiple test cases.

The first line contains one positive integer tt ( 1t201 \le t \le 20 ), denoting the number of test cases. Description of the test cases follows.

The single line of each test case contains one positive integer nn ( 3n1053 \le n \le 10^5 ) — number of tubes in Mike's tubular bells. Also 1lr21051 \le l \le r \le 2 \cdot 10^5 , i.e. the lengths of the tubes do not exceed 21052 \cdot 10^5 .

It is guaranteed that the sum of maximal number of queries (i.e. n+5000n + 5000 ) over all test cases does not exceed 105+500010^5 + 5000 . It means that sum of nn does not exceed 105+5000t500010^5 + 5000 - t \cdot 5000 .

输出格式

For each set of input data, read one integer nn . You are allowed to make no more than n+5000n + 5000 queries.

If you want to make a query, output it in the format "? xx yy ", where xx and yy — the numbers of tubes for which you learn the lcm (least common multiple) of their lengths. Note that 1x,yn,xy1 \le x, y \le n, x \neq y must be satisfied. The interactor will return a single integer —the answer to your query.

If you are ready to print the answer, print it in the format "! a1a_1 a2a_2 ... ana_n ". The output of the answer is not considered a query and is not included in the number of queries.

After each query and answer output, don't forget to output the line translation and reset the output buffer. Otherwise you will get the verdict "Idleness limit exceeded". To reset the buffer use:

  • fflush(stdout) or cout.flush() in C++;
  • System.out.flush() in Java;
  • flush(output) in Pascal;
  • stdout.flush() in Python;
  • see documentation for other languages.

Note that the interactor is not adaptive. That is, the original permutation is fixed in the beginning and don't depend on your queries.

Hacks:

Use the following format for hacks:

The first line contains a single positive integer tt ( 1t201 \le t \le 20 ) — the number of input datasets. A description of the input data sets is given below.

The first line of each test case contains one positive integer nn ( 3n1053 \le n \le 10^5 ) —the number of tubes. It is known that 1lr21051 \le l \le r \le 2 \cdot 10^5 , i.e. the lengths of the tubes do not exceed 21052 \cdot 10^5 .

The second line of each test case contains an array aa of nn positive integers — the lengths of the tubes in each input dataset. Remember that lairl \le a_i \le r and rl+1=nr-l+1 = n , and that all aia_i are different.

输入输出样例

  • 输入#1

    3
    5
    8 10 7 6 9
    5
    24 25 28 27 26
    7
    1 2 3 4 5 6 7

    输出#1

    ? 1 2
    40
    ? 2 5
    90
    ? 3 1
    56
    ? 4 5
    18
    ! 8 10 7 6 9
    ? 1 5
    312
    ? 2 4
    675
    ! 24 25 28 27 26
    ? 1 4
    4
    ? 2 5
    10
    ? 3 7
    21
    ? 6 2
    6
    ? 2 5
    10
    ? 1 2
    2
    ? 1 2
    2
    ? 1 2
    2
    ? 1 2
    2
    ? 1 2
    2
    ! 1 2 3 4 5 6 7
首页