I - Interactive Moles Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MiB

配点 : 100

くろうさ「今年は一緒に遊ぼう!」

しろうさ「これって左手と右手にハンマー持てばひとりでできない?」

くろうさ「手だとねじれっちゃったりしてよくないからね」

しろうさ「かしこい」

もぐらたたき神「わしの速さの半分も出せんとは情けない」

くろうさ・しろうさ「……」

問題文

この問題は interactive である.採点用プログラムが最大で 実行時間 100 ms / メモリ 16 MB 程度を使用する.

2100 列のマス目がある.ij 列のマスを (i, j) と表す (1 \le i \le 21 \le j \le 100).

くろうさとしろうさがマス目にいて,最初にいるマスがそれぞれ (A, B), (C, D) として与えられる.

続いて,もぐらたたきが始まる.クエリにオンラインで応答せよ.各クエリは以下のいずれかである:

  • もぐらがマス (e, f) に現れる.あなたはくろうさかしろうさを選ぶ.選ばれたうさぎがもぐらが現れたマスに移動する.うさぎがマス (i, j) からマス (e, f) に移動した場合,\lvert i - e \rvert + \lvert j - f \rvertコストがかかる.
  • もぐらたたきを終了する.このとき,今までにかかったコストの合計は,「もぐらが現れたマスの列を事前に知っていたと仮定したときのかかるコストの合計の最小値」を z として 2 z + \lvert A - C \rvert + \lvert B - D \rvert 以下でなければならない.

どの時点においても,くろうさ・しろうさ・もぐらのうち複数が同じマスにいることは認められる.

また,ジャッジは adaptive である.すなわち,あなたの選択によって,もぐらたたきが終了するかどうかやもぐらが現れるマスが変化する可能性がある.

制約

  • 1 \le A \le 2
  • 1 \le B \le 100
  • 1 \le C \le 2
  • 1 \le D \le 100
  • もぐらが現れるマス (e, f)1 \le e \le 21 \le f \le 100 を満たす.
  • もぐらが現れるクエリの回数は 1 以上 10\,000 以下である.

入出力

  1. 整数 A, B, C, D が空白区切りで標準入力に与えられる.
  2. 以下を繰り返す.
    1. 整数 e, f が空白区切りで標準入力に与えられる.
    2. e = f = 0 の場合,もぐらたたきを終了することを表す.プログラムを終了せよ.
    3. そうでない場合,もぐらがマス (e, f) に現れることを表す.標準出力に 1 または 21 行で出力し,標準出力を flush せよ.1 はくろうさを選ぶこと,2 はしろうさを選ぶことを表す.

これに従わない入出力を行った場合のジャッジ結果は不定である (必ずしも WA になるとは限らない).

入出力例

入力 出力 説明
1 12 2 24
最初,くろうさがマス (1, 12) に,しろうさがマス (2, 24) にいる.
1 1
もぐらがマス (1, 1) に現れる.
2
しろうさを選んでいる.マス (2, 24) からマス (1, 1) へ動き,24 のコストがかかる.
2 100
もぐらがマス (2, 100) に現れる.
1
くろうさを選んでいる.マス (1, 12) からマス (2, 100) へ動き,89 のコストがかかる.
0 0
もぐらたたきを終了する.合計コストは 113 であり,z = 87 より 2 z + \lvert A - C \rvert + \lvert B - D \rvert = 187 なので,正解となる.

実際のジャッジデータにおいて,この入出力例と一致する対話が生じ得るとは限らない.