Pagini recente » Cod sursa (job #2384280) | Cod sursa (job #3123233) | Cod sursa (job #10858) | Cod sursa (job #2527470) | Cod sursa (job #1936575)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
int main()
{
long n;
fin>>n;
vector <long> v(n);
for(long i=0;i<n;i++)
fin>>v[i];
long q;
fin>>q;
long t,x;
vector <long>::iterator poz;
for(long a0=0;a0<q;a0++)
{
fin>>t>>x;
if(t==0)
{
poz=upper_bound(v.begin(),v.end(),x);
if( *(poz-1)!=x)
fout<<-1<<'\n';
else
fout<<poz-v.begin()<<'\n';
}
if(t==1)
{
poz=lower_bound(v.begin(),v.end(),x+1);
fout<<poz-v.begin()<<'\n';
}
if(t==2)
{
poz=upper_bound(v.begin(),v.end(),x-1);
fout<<poz-v.begin()+1<<'\n';
}
}
//cout<<upper_bound(v.begin(),v.end(),4)-v.begin();
return 0;
}