Pagini recente » Cod sursa (job #442579) | Cod sursa (job #2803053) | Cod sursa (job #853543) | Cod sursa (job #153161) | Cod sursa (job #3191579)
#include <fstream>
#define DIM 100005
using namespace std;
ifstream cin("cautbin.in");
ofstream cout("cautbin.out");
int n,m,i,x,v[DIM],tip;
int cb(int x,int tip){
int st=1,dr=n;
while(st<=dr){
int mid=(st+dr)/2;
if(v[mid]==x){
if(tip<2)
st=mid+1;
else
dr=mid-1;
}else
if(v[mid]<x)
st=mid+1;
else
dr=mid-1;
}
if(tip==0&&v[dr]!=x)
return -1;
if(tip<2)
return dr;
return st;
}
int main()
{
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
cin>>m;
for(i=1;i<=m;i++){
cin>>tip>>x;
cout<<cb(x,tip)<<'\n';
}
return 0;
}