#include <iostream>
using namespace std;
int BinarySearch(int A[],int p,int r,int value)
{
int q = (p+r)/2;
if(A[q]==value)
{
return q; //value found
}
if(p==q)
{
return 0; //not found
}
if(A[q]>value)
{
return BinarySearch(A,p,q,value);
}
else
{
return BinarySearch(A,q+1,r,value);
}
}
int main() {
int x[] = {1,2,3,4,5,120, 140};
int pos = BinarySearch(x, 0, 7, 140);
printf("%d\n", pos);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IEJpbmFyeVNlYXJjaChpbnQgQVtdLGludCBwLGludCByLGludCB2YWx1ZSkKewogICAgaW50IHEgPSAocCtyKS8yOwoKICAgIGlmKEFbcV09PXZhbHVlKQogICAgewogICAgICAgIHJldHVybiBxOyAgIC8vdmFsdWUgZm91bmQKICAgIH0KICAgIGlmKHA9PXEpIAogICAgewogICAgICAgIHJldHVybiAwOyAgIC8vbm90IGZvdW5kCiAgICB9CiAgICBpZihBW3FdPnZhbHVlKQogICAgewogICAgICAgIHJldHVybiBCaW5hcnlTZWFyY2goQSxwLHEsdmFsdWUpOwogICAgfQogICAgZWxzZQogICAgewogICAgICAgIHJldHVybiBCaW5hcnlTZWFyY2goQSxxKzEscix2YWx1ZSk7IAogICAgIH0KfQoKaW50IG1haW4oKSB7CglpbnQgeFtdID0gezEsMiwzLDQsNSwxMjAsIDE0MH07CglpbnQgcG9zID0gQmluYXJ5U2VhcmNoKHgsIDAsIDcsIDE0MCk7CglwcmludGYoIiVkXG4iLCBwb3MpOwoJcmV0dXJuIDA7Cn0=