Pagini recente » Cod sursa (job #1672621) | Cod sursa (job #2478364) | Cod sursa (job #946254) | Cod sursa (job #2356421) | Cod sursa (job #3343609)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
string file = "cautbin";
ifstream f(file + ".in");
ofstream g(file + ".out");
const int dim = 100000;
long long v[dim+10];
int main()
{
long long n, m, c, x, maxx, i, j;
f >> n;
for (i = 1; i <= n; i++) f >> v[i];
//if (n<=dim) v[n + 2] = -1;
f >> m;
for (i = 1; i <= m; i++)
{
f >> c >> x;
if (c == 0)
{
long long r = upper_bound(v + 1, v + n + 1, x) - v - 1;
if (x == v[r]) g << r << "\n";
else g << -1 << "\n";
}
if (c == 1)
g << lower_bound(v + 1, v + n + 1, x + 1) - v - 1 << "\n";
if (c == 2)
g << upper_bound(v + 1, v + n + 1, x - 1) - v << "\n";
}
return 0;
}