Pagini recente » Cod sursa (job #1843038) | Cod sursa (job #2677346) | Cod sursa (job #108197) | Cod sursa (job #968430) | Cod sursa (job #2322560)
#include <bits/stdc++.h>
using namespace std;
int n, a[100001],i, t, u, v, st, dr, mij;
int main() {
ifstream cin("cautbin.in");
ofstream cout("cautbin.out");
cin >> n;
for (i=1; i<=n; i++)
cin >> a[i];
cin >> t;
for (i=1; i<=t; i++){
cin >> u >> v;
if (u==0) {
st=1; dr=n;
while (st<=dr) {
mij=st+(dr-st)/2;
if (v>=a[mij]) st=mij+1; else dr=mij-1;
}
if (a[st-1]==v) cout << st-1; else cout << -1;
}
if (u==1){
st=1; dr=n;
while (st<=dr) {
mij=st+(dr-st)/2;
if (v>=a[mij]) st=mij+1; else dr=mij-1;
}
cout << dr;
}
if (u==2) {
st=1; dr=n;
while (st<=dr) {
mij=st+(dr-st)/2;
if (v>=a[mij]) st=mij+1; else dr=mij-1;
}
cout << dr+1;}
}
return 0;
}