Pagini recente » Cod sursa (job #230277) | Cod sursa (job #2248385) | Cod sursa (job #339199) | Cod sursa (job #2716234) | Cod sursa (job #2908816)
#include <bits/stdc++.h>
using namespace std;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
int16_t c;
int n, m, val, v[100001], indx;
int main()
{
f >> n;
for (int i = 1; i <= n; i++) f >> v[i];
f >> m;
for(; m; m--){
f >> c >> val;
if(c == 0){
indx = upper_bound(v + 1, v + n + 1, val) - v - 1;
if(v[indx] == val && indx > 0 && indx <= n) g << indx;
else g << "-1\n";
}
else if(c == 1)
g << upper_bound(v + 1, v + n + 1, val) - v - 1;
else
g << lower_bound(v + 1, v + n + 1, val) - v;
g << '\n';
}
return 0;
}