Pagini recente » Cod sursa (job #868324) | Cod sursa (job #2048236) | Cod sursa (job #2820196) | Cod sursa (job #1202645) | Cod sursa (job #2639622)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
vector<int> v;
int main()
{
int n,i,x,op,q;
vector<int>:: iterator poz;
fin>>n;
for (i=1;i<=n;i++)
{
fin>>x;
v.push_back(x);
}
fin>>q;
for (;q>0;--q)
{
fin>>op>>x;
if (op==0)
{
poz=upper_bound(v.begin(),v.end(),x);
if (v[poz-v.begin()-1]==x)
fout<<poz-v.begin();
else fout<<-1;
}
if (op==2)
{
poz=lower_bound(v.begin(),v.end(),x-1);
fout<<poz-v.begin()+1;
}
else if (op==1)
{
poz=upper_bound(v.begin(),v.end(),x+1);
fout<<poz-v.begin();
}
fout<<'\n';
}
return 0;
}