Pagini recente » Cod sursa (job #1335407) | Cod sursa (job #79127) | Cod sursa (job #1166407) | Cod sursa (job #1636923) | Cod sursa (job #2641474)
#include <fstream>
#include <iostream>
using namespace std;
int v[100001];
int main()
{
ifstream in ("ciur.in");
ofstream out ("ciur.out");
int n, m, i, x, y, poz, min, max;
in >> n;
for (i = 1; i <= n; i++)
{
in >> v[i];
}
for (in >> m; m > 0; m--)
{
in >> x >> y;
poz = -1;
if (x == 0)
{
i = n;
if (v[n / 2] > y)
i = n / 2;
for (; i > 0 && poz < 1; i--)
{
if (v[i] == y)
poz = i;
}
}
else if (x == 1)
{
i = n;
if (v[n / 2] > y)
i = n / 2;
for (; i > 0 && poz < 1; i--)
{
if (v[i] <= y)
poz = i;
}
}
else
{
i = 1;
if (v[n / 2] < y)
i = n / 2;
for (; i <= n && poz < 1; i++)
{
if (v[i] >= y)
poz = i;
}
}
out << poz << "\n";
}
return 0;
}