Pagini recente » Cod sursa (job #1764374) | Cod sursa (job #469821) | Cod sursa (job #2611050) | Cod sursa (job #314326) | Cod sursa (job #2303692)
#include <bits/stdc++.h>
using namespace std;
int n, x, y, m, v[100011];
int main()
{
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
fin >> n;
for (int i=1;i<=n;i++) {
fin >> v[i];
}
fin >> m;
for (int i=1;i<=m;i++) {
fin >> x >> y;
if (x==0) {
int b = upper_bound(v+1,v+n+1,y)-v-1;
if (b<=n && b>=1 && v[b]==y) fout << b << endl;
else fout << -1 << endl;
}
else if (x==1) fout << lower_bound(v+1,v+n+1,y+1)-v-1 << endl;
else fout << upper_bound(v+1,v+n+1,y-1)-v << endl;
}
return 0;
}