Pagini recente » Cod sursa (job #3154795) | Cod sursa (job #591053) | Cod sursa (job #196940) | Cod sursa (job #3284095) | Cod sursa (job #412217)
Cod sursa(job #412217)
#include<fstream>
#include<algorithm>
using namespace std;
long v[100005];
int main ()
{
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
long i,n,m,x,y,poz;
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i];
fin>>m;
sort(v+1,v+n+1);
for(i=1;i<=m;i++)
{
fin>>x>>y;
if (x == 0) {
poz = upper_bound(v + 1, v + n + 1, y) - v - 1;
if (poz <= n && poz >= 1 && v[poz] == y)
fout<<poz<<"\n";
else
fout<<-1<<"\n";
} else if (x == 1) {
poz = lower_bound(v + 1, v + n + 1, y + 1) - v - 1;
printf("%d\n", x);
} else {
poz = upper_bound(v + 1, v + n + 1, y - 1) - v;
fout<<poz<<"\n";
}
}
fin.close ();
fout.close ();
return 0;
}