Pagini recente » Utilizatori inregistrati la Junior Challenge 2008 | Rating Dumitru Andrei Georgian (Schumi) | Utilizatori inregistrati la .com 2012 Runda 3 | Rating Livia Magureanu (livlivi) | Cod sursa (job #629273)
Cod sursa(job #629273)
#include <algorithm>
#include <iostream>
using namespace std;
int main() {
freopen("cautbin.in", "r", stdin);
freopen("cautbin.out", "w", stdout);
int N, M;
int x[100001];
cin >> N;
for (int i = 0; i < N; ++i)
cin >> x[i];
cin >> M;
for (int i = 0; i < M; ++i) {
int op, elem, *p;
cin >> op >> elem;
if (op == 0) {
p = upper_bound(x, x + N, elem);
if (p != x && *(p - 1) != elem)
cout << "-1\n";
else
cout << (p - x) << "\n";
} else if (op == 1) {
p = upper_bound(x, x + N, elem);
cout << (p - x) << "\n";
} else {
p = lower_bound(x, x + N, elem);
cout << (p - x + 1) << "\n";
}
}
return 0;
}