結果

問題 No.3212 SUPER Guess the Number
ユーザー tobisatis
提出日時 2025-07-25 23:18:36
言語 C#
(.NET 8.0.404)
結果
WA  
実行時間 -
コード長 676 bytes
コンパイル時間 15,909 ms
コンパイル使用メモリ 167,556 KB
実行使用メモリ 44,096 KB
平均クエリ数 23.42
最終ジャッジ日時 2025-07-25 23:19:02
合計ジャッジ時間 9,743 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other WA * 12
権限があれば一括ダウンロードができます
コンパイルメッセージ
  復元対象のプロジェクトを決定しています...
  /home/judge/data/code/main.csproj を復元しました (99 ミリ秒)。
  main -> /home/judge/data/code/bin/Release/net8.0/main.dll
  main -> /home/judge/data/code/bin/Release/net8.0/publish/

ソースコード

diff #

#nullable enable

void Q(int x) => Console.WriteLine("? " + x);
bool I() => Console.ReadLine()!.Trim() == "1";
void F(int x) => Console.WriteLine("! " + x);

var l = 0;
var r = 1000000;
Q(l);
Q(r);
var f = I();
if (f) (l, r) = (r, l);
for (var i = 3; i <= 25; i++)
{
    if (Math.Abs(l - r) <= 1) break;
    var mid = (l + r) >> 1;
    if (f)
    {
        Q(mid);
        f = I();
        if (f) (l, r) = (mid, l);
        else r = mid;
    }
    else
    {
        var mm = (mid + l) >> 1;
        Q(mm);
        I();
        if (i == 25) break;
        i++;
        Q(mid);
        f = I();
        if (f) (l, r) = (mid, mm);
        else (l, r) = (mm, mid);
    }
}
F(l);
0