Pagini recente » Cod sursa (job #518322) | Cod sursa (job #24426) | Cod sursa (job #47096) | Cod sursa (job #2589514) | Cod sursa (job #2621811)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
int n, v[100005], m, nr;
int main()
{
fin >> n;
for(int i = 1; i <= n; i++)
fin >> v[i];
fin >> m;
for(int i = 1; i <= m; i++)
{
int x, y;
fin >> y >> x;
if(y == 0)
{
nr = upper_bound(v + 1, v + n + 1, x) - v - 1;
if(v[nr] == x)
fout << nr << '\n';
else
fout << -1 << '\n';
}
else if(y == 1)
{
fout << upper_bound(v + 1, v + n + 1, x) - v - 1 << '\n';
}
else if(y == 2)
{
fout << lower_bound(v + 1, v + n + 1, x) - v << '\n';
}
}
}