Pagini recente » Cod sursa (job #993476) | Cod sursa (job #132583) | Cod sursa (job #1473371) | Cod sursa (job #710844) | Cod sursa (job #2224850)
#include <iostream>
#include <fstream>
using namespace std;
int num[100005];
int n;
int caut(int x){
int rez = 0, pas = 1 << 20;
while(pas){
if(rez + pas <= n && num[rez + pas] <= x)
rez += pas;
pas /= 2;
}
return rez;
}
int main()
{
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
fin >> n;
for(int i = 1; i <= n; ++i)
fin >> num[i];
int m, op, x;
fin >> m;
for(int q = 1; q <= m; ++q){
fin >> op >> x;
int pos = caut(x);
if(op == 2)
pos = caut(x - 1) + 1;
fout << pos << "\n";
}
return 0;
}