Pagini recente » Cod sursa (job #2701176) | Cod sursa (job #124082) | Cod sursa (job #1122450) | Cod sursa (job #969956) | Cod sursa (job #1491870)
#include<fstream>
using namespace std;
int v[10000];
int main()
{
ifstream f("cautbin.in");
ofstream g("cautbin.out");
int n,m,st,dr,mij,x,ans1=0,ans2,i,a,ans3;
f>>n;
dr=n;
for(i=1;i<=n;++i)
f>>v[i];
f>>m;
for(i=1;i<=m;++i)
{
st=1;
dr=n;
f>>a>>x;
if(a==1)
{
while(st<=dr)
{
mij=(st+dr)/2;
if(v[mij]<=x)
{
if(v[mij]==x)
ans1=mij;
ans2=mij;
st=mij+1;
}
else
dr=mij-1;
}
}
if(a==2)
{
while(st<=dr)
{
mij=(st+dr)/2;
if(v[mij]>=x)
{
ans3=mij;
dr=mij-1;
}
else
st=mij+1;
}
}
if(a==1)
g<<ans1<<endl<<ans2<<endl;
if(a==3)
g<<ans3<<endl;
}
}