Pagini recente » Cod sursa (job #1628246) | Cod sursa (job #602356) | Cod sursa (job #3260769) | Cod sursa (job #484815) | Cod sursa (job #1229440)
#include <cstdio>
#include <algorithm>
using namespace std;
int i, n, v[100001], q, x, y, m;
int main()
{
freopen("cautbin.in","r",stdin);
freopen("cautbin.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++)
scanf("%d",&v[i]);
sort(v+1,v+n+1);
scanf("%d",&m);
for (i=1;i<=m;i++)
{
scanf("%d %d",&q,&y);
if (q==0)
{
x = upper_bound(v+1, v+n+1, y)-v-1;
if ((x>=1 && x<=n) && (v[x]==y))
{
printf("%d\n", x);
}
else printf("-1\n");
}
else if (q==1)
{
x = lower_bound(v+1, v+n+1, y+1)-v-1;
printf("%d\n",x);
}
else
{
x=upper_bound(v+1, v+n+1, y-1) - v;
printf("%d\n",x);
}
}
return 0;
}