| 提出番号 | 129 |
|---|---|
| 提出者 | C3H5(ONO2)3 |
| 言語 | C++ |
| 提出日時 | 2017-06-20 16:39:32 |
| 問題名 | (11)いわゆる検索 |
| 結果 | AC |
| 点数 | 100% |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 1 | AC | 100% | 2ms | 8176KB |
| 2 | AC | 100% | 3ms | 8048KB |
| 3 | AC | 100% | 301ms | 12688KB |
| 4 | AC | 100% | 1048ms | 12688KB |
| 5 | AC | 100% | 441ms | 12704KB |
| 6 | AC | 100% | 478ms | 12704KB |
| 7 | AC | 100% | 480ms | 12704KB |
| 8 | AC | 100% | 505ms | 12688KB |
| 9 | AC | 100% | 471ms | 12704KB |
| 10 | AC | 100% | 526ms | 12688KB |
| 11 | AC | 100% | 482ms | 12704KB |
| 12 | AC | 100% | 362ms | 12688KB |
| 13 | AC | 100% | 449ms | 12688KB |
| 14 | AC | 100% | 439ms | 12688KB |
| 15 | AC | 100% | 298ms | 12672KB |
| 16 | AC | 100% | 474ms | 12704KB |
| 17 | AC | 100% | 301ms | 12704KB |
| 18 | AC | 100% | 541ms | 12704KB |
| 19 | AC | 100% | 476ms | 12672KB |
| 20 | AC | 100% | 319ms | 12704KB |
#include "bits/stdc++.h"
using namespace std;
int main(){
int n,q,s,b,c;
vector<int>v;
cin>>n;
for(int i=0;i<n;++i){
int t;
cin>>t;
v.push_back(t);
}
cin>>q;
for(int i=0;i<q;++i){
s=0;
b=n-1;
cin>>c;
for(int i=0;i<25;++i){
if(v[(s+b)/2]>=c){
b=(s+b)/2;
}else{
s=(s+b)/2;
}
}
if(v[s] >= c){
cout<<n-s<<endl;
}else if(v[b] >= c){
cout<<n-b<<endl;
}else{
cout << "0" << endl;
}
}
}