Pagini recente » Cod sursa (job #2311216) | Cod sursa (job #2135257) | Cod sursa (job #2869928) | Cod sursa (job #2815874) | Cod sursa (job #2407716)
#include <bits/stdc++.h>
using namespace std;
ifstream inf("cautbin.in");
ofstream outf("cautbin.out");
int n, q, t, c;
vector<int> v;
int main()
{
inf>>n;
for(int i=1; i<=n; i++)
{
inf>>c;
v.push_back(c);
}
inf>>q;
for(;q;q--)
{
inf>>t>>c;
if(t==0)
{
auto aux=upper_bound(begin(v), end(v), c)-1;
if(v[aux-begin(v)]!=c)
outf<<-1;
else
outf<<aux-begin(v)+1;
outf<<'\n';
}
else if(t==1)
{
outf<<upper_bound(begin(v),end(v), c)-begin(v)<<'\n';
}
else
{
outf<<lower_bound(begin(v), end(v), c)-begin(v)+1<<'\n';
}
}
return 0;
}