Cod sursa(job #2289071)
Utilizator | Data | 24 noiembrie 2018 10:55:58 | |
---|---|---|---|
Problema | Cautare binara | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.66 kb |
#include <iostream>
using namespace std;
int main()
{
int n,s,d,m,ok=0,a[25001],i,k,x;
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
cin>>k;
for(i=1;i<=k;i++)
{
s=1;d=n;ok=0;
cin>>x;
while(s<=d)
{
m=(s+d)/2;
if(a[m]==x)
{
ok=m;
break;
}
else
if(x<a[m])
d=m-1;
else
s=m+1;
}
if(ok==1)
cout<<1<<" ";
else
cout<<0<<" ";
}
return 0;
}