AT_tkppc4_1_m Pakenのうさぎ
Description
[problemUrl]: https://atcoder.jp/contests/tkppc4-1/tasks/tkppc4_1_m
**これはインタラクティブな問題です。**
今年のPakenでは、いつでももふもふできるうさぎを置くことになりました。
しかし、手頃なうさぎが見つからないので、一時的に部員であるanmichiをうさぎにしようと決まりました。
今ここに、人間をうさぎに変えるためのドロップが $ N $ 種類あり、$ 1 $ から $ N $ までの番号が振られています。
このうち効果があるのは $ 2 $ 種類だけであり、これらを $ 2 $ つ**両方**食べた場合にのみ人間はうさぎになりますが、効果がある $ 2 $ 種類がどれかは分かりません。他のドロップは人間に何ら影響を及ぼしません。
ドロップはとても苦いので、anmichiが食べるのは効果のある $ 2 $ つだけにしたいです。
anmichiが食べるべきドロップを識別するため、$ 25 $ 人の他の部員たちがそれぞれドロップを食べ、うさぎになったかどうか実験することで目的のドロップを識別することにしました。
$ 1 $ 回の実験では、ある部員が $ N $ 個のドロップのうち $ 0 $ 個以上のいくつかのドロップを選び、一気に食べることによって、うさぎになったかどうかを判定します。
ただし、$ 1 $ 人の部員を $ 2 $ 回以上の実験に使う事はできないので、高々 $ 25 $ 回しか実験を行えません。
適切に他の部員が食べるドロップを決めることで、効果のあるドロップを特定してください。
なお、それぞれのドロップは他の部員が全員食べられるくらい十分な量あるものとします。
### Input & Output Format
最初に、$ N $ が次の形式で標準入力から与えられます。
> $ N $
次に、クエリを繰り返し送ります。この回数は $ 25 $ 回以内でなければなりません。
部員に飲ませるドロップの数を $ K $ 個として、$ K $ と部員に飲ませるドロップの番号を $ K $ 個空白区切りで**昇順に**出力し、最後に改行してください。
> $ ? $ $ K $ $ A $$ 1 $ $ A $$ 2 $ $ \ldots $ $ A $$ K $
これに対するクエリの答えは、次の形式で与えられます。
> $ s $
$ s $ は `Rabbit`,`Human`のいずれかです。`Rabbit` の場合部員がうさぎになった事、`Human` の場合部員がうさぎにならなかった事を意味します。
答えを出力する際は、効果のあるドロップの番号をそれぞれ $ x,y $ **$ (x $**として、次のように出力してください。
> $ ! $ $ x $ $ y $
なお、答えの出力は部員へのクエリ回数に含まれないことに注意してください。
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- $ 2\ \leq\ N\ \leq\ 6000 $
### 注意
- **出力の最後に改行を含めて出力しなければなりません。その後、標準出力を flush しなければなりません。** そうでない場合は `TLE` の可能性があります。
- 答えを出力した後、プログラムをすぐに終了しなければならなりません。そうでないときの挙動は定義されていません。
- **出力の答えが間違っている場合の挙動は定義されていません (`WA`とは限りません)。**
### 入出力例
この入出力例では、$ N\ =\ 4 $ であり、ドロップ $ 1 $ と $ 3 $ に効果がある場合のジャッジ側とのやり取りの一例を示しております。
なお、これはあくまでも入出力例であり、意味のあるやりとりをしているとは限らない事に注意してください。
自分のプログラムへの入力(ジャッジ側の出力) 自分のプログラムの出力 4 ? 2 1 3 Rabbit ? 3 1 2 4 Human ? 0 Human ? 4 1 2 3 4 Rabbit ! 1 3 ここで、最後に `! 3 1` と出力した場合に正解にならない事に注意してください。$ x\ を満たす必要があります。 $