Pagini recente » Cod sursa (job #1414642) | Cod sursa (job #822379) | Cod sursa (job #105441) | Cod sursa (job #32773) | Cod sursa (job #535711)
Cod sursa(job #535711)
//Cristi
#include <iostream>
#include<stdio.h>
using namespace std;
const int lg=100001;
int v[lg],n,m;
void read()
{
int i;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cin>>m;
}
int binar(int x)
{
int i, j;
for( i = 1; i <= n; i = i << 1);
for( j = 0; i >= 0; i = i >> 1)
if(i + j <= n && x >= v[j + i])
j += i;
return j;
}
void solve()
{
int i,j,op,x,smile,oky;
for(i=1;i<=m;i++)
{
cin>>op>>x;
smile=binar(x);
if(op==0)
{
if(v[smile] == x)
printf("%d\n",smile);
else printf("-1\n",smile);
}
}
}
int main()
{
freopen("cautbin.in","r",stdin);
freopen("cautbin.out","w",stdout);
read();
solve();
return 0;
}