Pagini recente » Cod sursa (job #2310828) | Cod sursa (job #1950219) | Cod sursa (job #2310822) | Cod sursa (job #1881041) | Cod sursa (job #3330070)
#include <fstream>
using namespace std;
ifstream cin ("cautbin.in");
ofstream cout ("cautbin.out");
int n, m, a[100000], x, poz, dr, st, mij, nr;
int main()
{
cin>>n;
for (int i=1; i<=n; i++)
cin>>a[i];
cin>>m;
for (int i=1; i<=m; i++)
cin>>nr>>x;
st=1;
dr=n;
poz=0;
while (st<=dr)
{ mij=(dr+st)/2;
if (a[mij]==x) {
poz=mij;
st=mij+1;
}
else if (a[mij]>x) dr=mij-1;
else st=mij+1;
}
if (poz==0)cout<<-1<<'\n';
else cout<<poz<<'\n';
st=1;
dr=n;
poz=0;
while (st<=dr)
{ mij=(dr+st)/2;
if (a[mij]<=x) {
poz=mij;
st=mij+1;
}
else dr=mij-+1;
}
cout<<poz<<'\n';
st=1;
dr=n;
poz=0;
while (st<=dr)
{ mij=(dr+st)/2;
if (a[mij]>=x) {
poz=mij;
dr=mij-1;
}
else st=mij+1;
}
cout<<poz;
return 0;
}