Pagini recente » Cod sursa (job #1238183) | Cod sursa (job #2105624) | Cod sursa (job #2402379) | Cod sursa (job #1123819) | Cod sursa (job #1703970)
#include <fstream>
using namespace std;
ifstream cin("cautbin.in");
ofstream cout("cautbin.out");
int v[100005];
const int pas=1<<16;
int main()
{
int n,m,i,a,x,y,b;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cin>>m;
for(a=1;a<=m;a++)
{
cin>>b>>x;
y=pas;
i=0;
if(b==0)
while(y!=0){
if(i+y<=n&&v[i+y]==x)
i+=y;
y/=2;
}
if(b==1)
while(y!=0){
if(i+y<=n&&v[i+y]<=x)
i+=y;
y/=2;
}
if(b==2)
while(y!=0){
if(i+y<=n&&v[i+y]<x)
i+=y;
y/=2;
}
if(i==0 and b == 0)
cout<<-1<<"\n";
if(b==2)
cout<<i+1<<"\n";
else
cout<<i<<"\n";
}
cin.close();
cout.close();
return 0;
}