この問題はインタラクティブな問題です。
屋根裏部屋で、Tajaは時々しか勝てない古代のテーブルゲームを見つけました。Tajaに、このゲームに確実に勝つ方法を教えてあげてください。
ゲームの用具は、半径1の円形の駒(上に矢印が描かれています)、2つのサイコロ、そして360枚のシールで構成されています。すべてのシールには、$0^\circ$ から $359^\circ$ までのユニークな整数が書かれています。
プレイを開始する前に、テーブル上に点をマークし、その上に円形の駒を置きます。次に、12枚の異なるシールを選び、そのうち6枚を1つ目のサイコロに、残りの6枚を2つ目のサイコロに貼ります。目標は、マークした点を駒で覆うことです。これは、以下のルールに従ってターンを行うことで達成されます。まず、プレイヤーはどちらかのサイコロを振り、サイコロの上面に書かれた度数だけ駒を反時計回りに回転させます。その後、駒は矢印の方向に距離10だけ移動します。
マークされた点の座標は常に $(0, 0)$ です。駒の中心の初期位置を $(x, y)$ とすると、以下の制約を満たします。
$$2 \leq \max(|x|, |y|) \leq 500$$
この問題におけるクエリの回数は、行われたターンの回数と等しくなります。
インタラクション
インタラクタは、駒の中心の座標と矢印の方向を提示することから始まります。その後、あなたのプログラムは両方のサイコロに貼る数字を応答する必要があります。次に、あなたのプログラムが指定したサイコロの番号に対して、インタラクタはサイコロの出目(度数)を出力し、駒が目標に到達したかどうかを伝えます。もし駒がマークされた点を覆った場合、あなたのプログラムは終了しなければなりません。そうでなければ、インタラクタは駒の新しい位置と矢印の方向を出力し、次のターンを開始します。
出力
出力の最初の2行には、それぞれ $0$ から $359$ までの6つの整数が含まれている必要があります。これらはそれぞれ1つ目と2つ目のサイコロに貼るシールです。これらの行に含まれるすべての整数はユニークでなければなりません。
続く行には、$1$ または $2$ のいずれか(振るサイコロの番号)のみを含める必要があります。
各行を出力した後、標準出力をフラッシュすることを忘れないでください。
入力
入力は以下の4行の組で構成されます。
- $x, y$ — 駒の中心の座標
- $v_x, v_y$ ($v_x^2 + v_y^2 = 100$) — 駒の矢印の方向
- $d$ — サイコロの出目(度数)(サイコロの各面は等確率で出ます)
- «Yes» — 駒が $(0, 0)$ の点を覆った場合、«No» — それ以外の場合
入出力例
入力 1
10.000000000 -10.000000000 0.000000000 -10.000000000 180 No 10.000000000 0.000000000 0.000000000 10.000000000 90 Yes
出力 1
180 96 250 187 319 6 295 152 82 90 32 334 1 2
Figure 1. Illustration of the two dice used in the game, each labeled with specific degree values.(図1. ゲームで使用される2つのサイコロのイラスト。それぞれ特定の度数がラベル付けされている。)