#arc154d. [arc154_d]A + B > C ?

[arc154_d]A + B > C ?

Problem Statement

PCT has a permutation (P1,P2,dots,PN)(P_1,P_2,\\dots,P_N) of (1,2,dots,N)(1,2,\\dots,N). You are only informed of NN.

You can ask him at most 2500025000 questions of the following form.

  • Specify a triple of integers (i,j,k)(i,j,k) such that 1lei,j,kleN1 \\le i,j,k \\le N and ask whether Pi+Pj>PkP_i + P_j > P_k.

Find all of P1,P2,dots,PNP_1,P_2,\\dots,P_N.

Constraints

  • 1leNle20001 \\le N \\le 2000
  • PP is decided before the start of the interaction of your program and the judge.

Input and Output

This is an interactive task, where your program and the judge interact via input and output.

First, your program is given NN, the length of the permutation, from Standard Input:

NN

Then, you get to ask questions. Print your question to Standard Output in the following format: (There should be a newline at the end.)

? ii jj kk

If the question is valid, the answer ansans will be given from Standard Input:

ansans

Here, ansans is Yes or No.

If the question is malformed or judged invalid because you have asked more questions than allowed, -1 will be given from Standard Input:

-1

Here, the submission has already been judged incorrect. The judge will end the interaction at this point; preferably, your program should also quit.

Once you have identified all of P1,P2,dots,PNP_1, P_2, \\dots, P_N, print them to Standard Output in the following format: (There should be a newline at the end.)

! P1P_1 P2P_2 dots\\dots PNP_N

Judging

  • Each time you print something, end it with a newline and flush Standard Output. Otherwise, you might get a TLE