Pagini recente » Cod sursa (job #911216) | Cod sursa (job #2294251) | Cod sursa (job #3252217) | Cod sursa (job #1615578) | Cod sursa (job #2199762)
#include <iostream>
#include <bits/stdc++.h>
#include <fstream>
using namespace std;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
vector<int> v;
int main()
{
int n, c, x, i;
vector<int>::iterator it;
f>>n;
v.resize(n);
for(i=0;i<n;i++)
f>>v[i];
f>>c;
while(f>>c>>x)switch(c)
{
case 0:
{
it=upper_bound(v.begin(), v.end(), x);
it--;
if(*it==x)
g<<it-v.begin()+1<<'\n';
else
g<<"-1\n";
}break;
case 1:
{
it=upper_bound(v.begin(), v.end(), x);
g<<it-v.begin()<<'\n';
}break;
case 2:
{
it=lower_bound(v.begin(), v.end(), x);
if(*it!=x)
it++;
g<<it-v.begin()+1<<'\n';
}break;
}
f.close();
g.close();
return 0;
}