Pagini recente » Cod sursa (job #507114) | Cod sursa (job #878359) | Cod sursa (job #878713) | Cod sursa (job #2667367) | Cod sursa (job #2568684)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
const int DIM = 1e5 + 1;
int v[DIM];
main()
{
int n;
fin >> n;
for(int i = 1; i <= n; ++i)
fin >> v[i];
int q;
fin >> q;
for(; q; --q)
{
int op, x;
fin >> op >> x;
int l = 1;
int r = n;
if(op == 0)
{
int pos = upper_bound(v + 1, v + 1 + n, x) - v - 1;
if(pos && v[pos] == x)
fout << pos << '\n';
else
fout << -1 << '\n';
continue;
}
if(op == 1)
{
int pos = lower_bound(v + 1, v + 1 + n, x + 1) - v - 1;
fout << pos << '\n';
continue;
}
if(op == 2)
{
int pos = lower_bound(v + 1, v + 1 + n, x) - v;
fout << pos << '\n';
continue;
}
}
}