問題一覧 > 通常問題

No.513 宝探し2

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / リアクティブ問題 (詳しくはこちら
タグ : / 解いたユーザー数 223
作問者 : nmnmnmnmnmnmnmnmnmnmnmnmnmnm / テスター : PulmnPulmn
3 ProblemId : 1059 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2018-03-01 17:55:19

問題文

2次元座標(AX,AY)に宝が埋められていますがあなたはその座標の数値を知りません。
(AX,AYは共に0以上100000以下の整数です。)

あなたはある座標を質問すると宝の位置までのマンハッタン距離を知ることができます。
100回までの質問で宝の埋めてある位置を特定せよ。

入出力の説明

この問題はリアクティブ問題です。

質問する座標(X,Y)を

X Y

のようにXとYを半角スペースで分けて出力せよ。最後に改行すること。
X,Yの数値は符号付き32bit整数値に収まる整数で出力すること。 なお、出力後には毎回flushすること。

1つの出力が終わるたびに出力した位置から宝の位置までのマンハッタン距離が標準入力から得られます。
質問は100回まで可能でマンハッタン距離が0となる出力をして終了した時点で正解となります。

2018/02/21 13:13 追記 0が標準入力から与えられた場合は、その後の出力をせずにプログラムを終了してください。終了しない場合の挙動は不定です。

サンプルコード

// 座標(0,0)から(0,99)までを試す。
int main(){
  for(int i=0;i<100;i++){
    cout << 0 << " " << i << endl;
    int d;
    cin>>d;
    if(d==0)return 0;
  }
  return 0;
}

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。