Pagini recente » Cod sursa (job #1080863) | Cod sursa (job #1563878) | Cod sursa (job #890782) | Cod sursa (job #938882) | Cod sursa (job #2400447)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
int n, *v;
int main() {
fin >> n;
v = new int[n];
for (int i = 0; i < n; ++i) {
fin >> v[i];
}
int m, t, val, rez;
for (fin >> m; m > 0; --m) {
fin >> t >> val;
switch (t) {
case 0:
rez = upper_bound(v, v + n, val) - v - 1;
if (rez == n || v[rez] != val) {
rez = -2;
}
break;
case 1:
rez = upper_bound(v, v + n, val) - v - 1;
break;
case 2:
rez = upper_bound(v, v + n, val - 1) - v;
break;
}
fout << ++rez << "\n";
}
}