Pagini recente » Cod sursa (job #1687226) | Cod sursa (job #2041828) | Cod sursa (job #2027929) | Cod sursa (job #3182107) | Cod sursa (job #2648358)
#include<bits/stdc++.h>
using namespace std;
ifstream in("cautbin.in");
ofstream out("cautbin.out");
vector <int> arr;
int main()
{
int n;
in>>n;
for(int i = 0;i<n;i++)
{
int x;
in>>x;
arr.push_back(x);
}
int cate;
in>>cate;
for(int i=0;i<cate;i++)
{
int cer,num;
in>>cer>>num;
if(cer==0)
{
int pos = upper_bound(arr.begin(),arr.end(),num)-arr.begin()-1;
if(arr[pos]==num)
{
out<<pos+1<<'\n';
}
else out<<-1<<'\n';
}
else if(cer == 1)
{
int pos = upper_bound(arr.begin(),arr.end(),num)-arr.begin();
out<<pos<<'\n';
}
else
{
int pos = lower_bound(arr.begin(),arr.end(),num)-arr.begin()+1;
out<<pos<<'\n';
}
}
return 0;
}