Pagini recente » Cod sursa (job #1812690) | Cod sursa (job #266327) | Cod sursa (job #2815973) | Cod sursa (job #2864910) | Cod sursa (job #913518)
Cod sursa(job #913518)
#include <cstdio>
#include <algorithm>
using namespace std;
int a[100100];
int n;
void citire(){
scanf("%d", &n);
for(int i = 0; i < n; ++ i){
scanf("%d", &a[i]);
}
}
void rez(){
int m = 0;
scanf("%d", &m);
while(m --){
int caz;
int x;
scanf("%d", &caz);
scanf("%d", &x);
if(caz == 0){
int p = upper_bound(a,a + n, x) - a;
if(x >= 0 && a[p - 1] == x){
printf("%d\n", p);
}else{
printf("-1\n");
}
}
if(caz == 2){
printf("%d\n", lower_bound(a, a + n, x) - a + 1);
}
if(caz == 1){
printf("%d\n", upper_bound(a, a + n, x) - a);
}
}
}
int main()
{
freopen("cautbin.in", "r", stdin);
freopen("cautbin.out", "w", stdout);
citire();
rez();
return 0;
}