Pagini recente » Cod sursa (job #2507158) | Cod sursa (job #1099811) | Cod sursa (job #2974171) | Cod sursa (job #919202) | Cod sursa (job #398587)
Cod sursa(job #398587)
#include <fstream>
#include <algorithm>
using namespace std;
const int MAX_N = 100005;
ifstream fin ("cautbin.in");
ofstream fout ("cautbin.out");
int N, M, V[MAX_N];
int main()
{
fin >> N;
for(int i = 1; i <= N; ++i)
fin >> V[i];
fin >> M;
for(int i = 1; i <= M; ++i)
{
int t, x;
fin >> t >> x;
switch(t)
{
case 0 :
{
int p = upper_bound(V+1, V+N+1, x) - V - 1;
if(V[p] == x)
fout << p << "\n";
else
fout << "-1\n";
break;
}
case 1 : fout << upper_bound(V+1, V+N+1, x) - V - 1 << "\n"; break;
default : fout << lower_bound(V+1, V+N+1, x) - V << "\n";
}
}
}