結果
問題 |
No.246 質問と回答
|
ユーザー |
|
提出日時 | 2015-07-17 22:33:38 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 569 bytes |
コンパイル時間 | 1,335 ms |
コンパイル使用メモリ | 157,940 KB |
実行使用メモリ | 25,844 KB |
平均クエリ数 | 31.00 |
最終ジャッジ日時 | 2024-07-16 06:51:30 |
合計ジャッジ時間 | 4,674 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | WA * 30 |
ソースコード
#include <bits/stdc++.h> #define rep(i, a) for (int i = 0; i < (a); i++) #define rep2(i, a, b) for (int i = (a); i < (b); i++) using namespace std; typedef long long ll; const ll inf = 1e9; const ll mod = 1e9 + 7; // (left, right] int minimum(bool(*C)(int), int left, int right) { while (right - left > 1) { int mid = (left + right) / 2; (C(mid) ? right : left) = mid; } return right; } bool C(int x) { int t; cout << "? x" << endl; cin >> t; return t; } int main() { cout << "! " << minimum(C, 0, 1e9 + 2) << endl; }