結果
問題 |
No.2753 鳩の巣原理
|
ユーザー |
![]() |
提出日時 | 2024-05-23 11:41:50 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 27 ms / 2,000 ms |
コード長 | 476 bytes |
コンパイル時間 | 2,009 ms |
コンパイル使用メモリ | 168,336 KB |
実行使用メモリ | 25,452 KB |
平均クエリ数 | 11.00 |
最終ジャッジ日時 | 2024-12-20 18:48:02 |
合計ジャッジ時間 | 4,693 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 |
ソースコード
#include<bits/stdc++.h> using namespace std; int main(){ int data,N; int left,right,mid; cin >> N; vector<int> A(N+1); left=1; right = N; for(int i=0;i<=N;i++){ A[i] = -1; } A[0] = 0; A[1] = 1; A[N] = N-1; for(int i=0;i<10;i++){ mid = (left+right)/2; cout << "? " << mid << endl; cin >> data; A[mid] = data; if(A[right]-A[mid] < right-mid){ left = mid; } else { right = mid; } } cout << "Yes " << left << " " << right << endl; return 0; }