Memory2

2N장의 카드에 적힌 값을 알아내야 한다. 두 장을 지정하면 서로 다를 때 JOI가 더 외우기 쉬운 값 하나만 알려주며, 이런 질의를 K번까지 할 수 있다.

어려움8그리디구현아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

表に 0 以上 N − 1 以下の整数が 1 つ書かれたカードが 2 枚ずつある.あなたと JOI 君は,これら 2N 枚 のカードを用いて神経衰弱というゲームの練習をしている.

ゲームの練習を始める時点では,カードは裏向きの状態でテーブルに横一列に並べられている.左から i + 1 枚目 (0 ≦ i ≦ 2N − 1) のカードを,カード i と呼ぶ.カード i の表に書かれた整数を Ai (0 ≦ i ≦ 2N − 1) とする.最初,JOI 君とあなたには,Ai (0 ≦ i ≦ 2N − 1) がどのような値であるかは分からない. あなたと JOI 君は,以下のやりとりを K 回まで繰り返すことができる.

  1. あなたは,2N 枚のカードのうちの 2 枚のカードを指定する.
  2. JOI 君は,指定された 2 枚のカードをめくり,表に書かれた整数をあなたに見えないようにこっそり 見る.もし,2 枚のカードの表に書かれた整数が等しい場合は,その値を覚えてあなたに伝える.そ うでない場合は,表に書かれている整数のうち JOI 君が覚えやすい方の整数を覚えてあなたに伝える.

JOI 君にとっての整数の覚えやすさは,N 個の整数 P0, P1, . . . , PN−1 で表される.これらの整数は,以下 の 2 つの条件を満たす.

  • 0 ≦ Pi ≦ N − 1 (0 ≦ i ≦ N − 1).
  • Pi ≠ Pj (0 ≦ i < j ≦ N − 1).

JOI 君にとって i が j よりも覚えやすいことは,Pi < Pj が成り立つことと同値である.

あなたの課題は,JOI 君と K 回以下のやりとりを行うことで,それぞれのカードに書かれた整数を特定 することである.ただし,あなたは,JOI 君にとっての整数の覚えやすさを表す整数 P0, P1, . . . , PN−1 がど のような値であるかを知らない.

JOI 君とやりとりを行って,それぞれのカードに書かれた整数を特定するプログラムを作成せよ.

제한

  • 1 ≦ N ≦ 50.
  • 0 ≦ Pi ≦ N − 1 (0 ≦ i ≦ N − 1).
  • Pi ≠ Pj (0 ≦ i < j ≦ N − 1).
  • 0 ≦ Ai ≦ N − 1 (0 ≦ i ≦ 2N − 1).
  • どの x (0 ≦ x ≦ N − 1) に対しても,Ai = x を満たす i (0 ≦ i ≦ 2N − 1) はちょうど 2 つある.