Pagini recente » Cod sursa (job #2172444) | Cod sursa (job #1058807) | Cod sursa (job #96443) | Cod sursa (job #1567387) | Cod sursa (job #1750414)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("cautbin.in");
ofstream out("cautbin.out");
int v[100003];
int n;
int lwb(int x) {
return lower_bound(v+1, v+n+1, x)-v;
}
int main() {
in >> n;
for(int i = 1; i <= n; i++)
in >> v[i];
int q,x,y;
in >> q;
for(int i = 1; i <= q; i++) {
in >> x >> y;
if(x == 0) {
int lw = lwb(y+1);
if(lw == 1)
out << "-1" << '\n';
else if(v[lw-1] != y)
out << "-1" << '\n';
else
out << lw-1 << '\n';
} else if(x == 1) {
int lw = lwb(y+1);
if(lw == 1)
out << lw << '\n';
else
out << lw-1 << '\n';
} else {
int lw = lwb(y);
out << lw << '\n';
}
}
return 0;
}