Pagini recente » Cod sursa (job #445128) | Cod sursa (job #1165684) | Cod sursa (job #498280) | Cod sursa (job #1027113) | Cod sursa (job #1162616)
#include<cstdio>
#include<algorithm>
using namespace std;
const int nmax = 100005;
int n,i,a[nmax],m,x,poz;
int main()
{
freopen("cautbin.in","r",stdin);
freopen("cautbin.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++) scanf("%d",&a[i]);
scanf("%d",&m);
for(;m;m--)
{
scanf("%d%d",&i,&x);
if(i==0)
{
poz=upper_bound(a+1,a+n+1,x)-a;
if(a[poz-1]==x) printf("%d\n",poz-1);
else printf("-1\n");
}
else if(i==1)
{
poz=upper_bound(a+1,a+n+1,x)-a;
printf("%d\n",poz-1);
}
else
{
poz=lower_bound(a+1,a+n+1,x)-a;
printf("%d\n",poz);
}
}
return 0;
}