Pagini recente » Cod sursa (job #2272736) | Cod sursa (job #2596082) | Cod sursa (job #1513051) | Cod sursa (job #1166673) | Cod sursa (job #594501)
Cod sursa(job #594501)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
long N, M, V[100005];
int main()
{
ifstream fin ("cautbin.in");
ofstream fout ("cautbin.out");
long i, Tip, Cautat, X;
fin >> N;
for (i=1; i<=N; ++i)
{
fin >> V[i];
}
sort (V+1, V+N+1);
fin >> M;
for (; M>0; --M)
{
fin >> Tip >> Cautat;
if (Tip==0)
{
X=upper_bound (V+1, V+N+1, Cautat)-V-1;
if ((X>0)&&(X<=N))
{
fout << X << "\n";
}
else
{
fout << "-1\n";
}
}
if (Tip==1)
{
X=lower_bound (V+1, V+N+1, Cautat+1)-V-1;
fout << X << "\n";
}
if (Tip==2)
{
X=upper_bound (V+1, V+N+1, Cautat-1)-V;
fout << X << "\n";
}
}
fin.close ();
fout.close ();
return 0;
}