Pagini recente » Cod sursa (job #3362070) | Cod sursa (job #3361592) | Cod sursa (job #3361747) | Cod sursa (job #3362082) | Cod sursa (job #3361267)
#include <bits/stdc++.h>
using namespace std;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
vector <int> v;
int p,n,i,x,y,q;
int main()
{
f>>n;
for(i=1; i<=n; i++)
{
f>>x;
v.push_back(x);
}
f>>q;
for(i=1; i<=q; i++)
{
f>>x>>y;
if(x==0)
{
p=upper_bound(v.begin(),v.end(),y)-v.begin()-1;
if(p<0 or v[p]!=y) g<<"-1\n";
else g<<p+1<<'\n';
}
else if(x==1)
{
g<<upper_bound(v.begin(),v.end(),y)-v.begin()<<'\n';
}
else
{
g<<lower_bound(v.begin(),v.end(),y)-v.begin()+1<<'\n';
}
}
}