Pagini recente » Cod sursa (job #2673499) | Cod sursa (job #680427) | Cod sursa (job #2123388) | Cod sursa (job #2549815) | Cod sursa (job #1680742)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
int n, m, mode, value;
vector<int> sir;
vector<int>::iterator it;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
f >> n;
for(int i = 0; i < n; i++){
f >> value;
sir.push_back(value);
}
f >> m;
for(int i = 0; i < m; i++){
f >> mode >> value;
if(mode == 0){
it = upper_bound(sir.begin(), sir.end(), value);
if(it != sir.end())
g << (it - sir.begin()) << '\n';
else
g << -1 << '\n';
}
if(mode == 1){
it = lower_bound(sir.begin(), sir.end(), value + 1);
g << (it - sir.begin()) << '\n';
}
if(mode == 2){
it = upper_bound(sir.begin(), sir.end(), value - 1);
g << (it - sir.begin()) + 1 << '\n';
}
}
f.close();
g.close();
return 0;
}