結果

問題 No.246 質問と回答
ユーザー papinianuspapinianus
提出日時 2016-08-31 13:06:32
言語 PHP
(8.3.4)
結果
WA  
実行時間 -
コード長 703 bytes
コンパイル時間 2,002 ms
コンパイル使用メモリ 32,148 KB
実行使用メモリ 49,804 KB
平均クエリ数 7.00
最終ジャッジ日時 2024-07-16 10:57:20
合計ジャッジ時間 6,156 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 WA -
testcase_01 WA -
testcase_02 WA -
testcase_03 WA -
testcase_04 WA -
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 WA -
testcase_25 WA -
testcase_26 WA -
testcase_27 WA -
testcase_28 WA -
testcase_29 WA -
権限があれば一括ダウンロードができます
コンパイルメッセージ
No syntax errors detected in Main.php

ソースコード

diff #

<?php
$range_E = 63;//Math.pow(10, 9);
$range_S = 1;
$judge = [];
$judge[1] = 1;
$std = [[2,1],[0,1]];
while(true) {
    $point = ceil(($range_S+$range_E)/2);
    if($judge[$point] = ask($point)) {
        $range_S = ($point==$range_E)?$point-1:$point;
    } else {
        $range_E = (($point-1)==$range_S)?$point:$point-1;
    }
    if(($range_E - $range_S)==1) {
        break;
    }
}
if(!isset($judge[$range_S])) {
    $judge[$range_S] = ask($range_S);
}
if(!isset($judge[$range_E])) {
    $judge[$range_E] = ask($range_E);
}
printf("! %d\n", $range_S+$std[$judge[$range_S]][$judge[$range_E]]);
flush();

function ask($num) {
    printf("? %d\n",$num);
    flush();
    return trim(fgets(STDIN));
}
0