Pagini recente » Cod sursa (job #3260213) | Cod sursa (job #2647266) | Cod sursa (job #1668899) | Cod sursa (job #2608075) | Cod sursa (job #1631031)
#include <fstream>
using namespace std;
ifstream in("cautbin.in");
ofstream out("cautbin.out");
int main()
{
int st=0,mij,dr,gasit,i,n,x;
int v[100000];
in>>n;
for(i=0; i<n; i++)
{
in>>v[i];
}
dr=n-1;
in>>x;
gasit=0;
while(gasit==0 && st<=dr)
{
mij=(st+dr)/2;
if(v[mij]>x)
st=mij+1;
else if(v[mij]<x)
dr=mij-1;
else
gasit=1;
}
gasit=0;
while(gasit==0 && st<=dr)
{
mij=(st+dr)/2;
if(v[mij]>=x)
st=mij+1;
else if(v[mij]<x)
dr=mij-1;
}
while(gasit==0 && st<=dr)
{
mij=(st+dr)/2;
if(v[mij]>=x)
mij=st+1;
else if(v[mij]<=x)
mij=dr-1;
}
out<<mij<<endl;
out<<mij<<endl;
out<<mij;
return 0;
}