Pagini recente » Cod sursa (job #1412931) | Cod sursa (job #646045) | Cod sursa (job #256517) | Cod sursa (job #3129545) | Cod sursa (job #2776148)
#include<fstream>
using namespace std;
ifstream F("cautbin.in");
ofstream G("cautbin.out");
int n,m,i,v[100001],x,y,s,l;
int main()
{
F>>n;
for(i=1;i<=n;++i)
F>>v[i];
for(F>>m,l=1;l<=n;l<<=1);
while(m--) {
F>>x>>y;
if(x<2) {
for(s=l,i=0;s;s>>=1)
if(i+s<=n&&v[i+s]<=y)
i+=s;
G<<(!x&&v[i]!=y?-1:i)<<"\n";
continue;
}
for(s=l,i=n;s;s>>=1)
if(i>s&&v[i-s]>=y)
i-=s;
G<<i<<"\n";
}
return 0;
}