Pagini recente » Cod sursa (job #2458383) | Cod sursa (job #1533114) | Cod sursa (job #604931) | Cod sursa (job #1466975) | Cod sursa (job #1862076)
#include <bits/stdc++.h>
using namespace std;
int v[10005];
int main()
{
freopen("cautbin.in", "r", stdin);
freopen("cautbin.out", "w", stdout);
int n;
scanf("%d", &n);
for(int i = 1; i <= n; ++i)
scanf("%d", &v[i]);
int m;
scanf("%d", &m);
for(int i = 1; i <= m; ++i){
int a, b;
scanf("%d%d", &a, & b);
if(a == 0){
int x = upper_bound(v + 1, v + n + 1, b) - v - 1;
if(x <= n && x >= 1 && v[x] == b)
printf("%d\n", x);
else printf("-1\n");
}
if(a == 1){
int x = lower_bound(v + 1, v + n + 1, b + 1) - v - 1;
printf("%d\n", x);
}
if(a == 2){
int x = upper_bound(v + 1, v + n + 1, b - 1) - v;
printf("%d\n", x);
}
}
return 0;
}