#include <iostream>
using namespace std;
int s=0;
int bin(int value,int arr[],int left,int right)
{
if(left>s||right>s)
return -1;
int temp=(left+right)/2;
if(arr[temp]>=value&&(temp==0||arr[temp-1]<value))
return temp;
else if(arr[temp]>=value)
{
bin(value,arr,left,temp);
}
else
{
bin(value,arr,temp+1,right);
}
}
int main() {
int arr[10]={1,2,3,4,5,6,7,10,14,20};
s=9;
int val=bin(2,arr,0,9);
cout<<val<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwppbnQgcz0wOwppbnQgYmluKGludCB2YWx1ZSxpbnQgYXJyW10saW50IGxlZnQsaW50IHJpZ2h0KQp7CgkKCWlmKGxlZnQ+c3x8cmlnaHQ+cykKICAgICAgcmV0dXJuIC0xOwogICAgICAKICAJaW50IHRlbXA9KGxlZnQrcmlnaHQpLzI7CiAgCQogIAkKICAJCiAgCWlmKGFyclt0ZW1wXT49dmFsdWUmJih0ZW1wPT0wfHxhcnJbdGVtcC0xXTx2YWx1ZSkpCiAgCSAgcmV0dXJuIHRlbXA7CiAgCSAgCiAgCWVsc2UgaWYoYXJyW3RlbXBdPj12YWx1ZSkKICAJICB7CiAgCSAgCWJpbih2YWx1ZSxhcnIsbGVmdCx0ZW1wKTsKICAJICB9CiAgCWVsc2UKICAJICB7CiAgCSAgCWJpbih2YWx1ZSxhcnIsdGVtcCsxLHJpZ2h0KTsKICAJICB9CgkKfQoKCmludCBtYWluKCkgewogICAgaW50IGFyclsxMF09ezEsMiwzLDQsNSw2LDcsMTAsMTQsMjB9OwogICAgcz05OwogICAgaW50IHZhbD1iaW4oMixhcnIsMCw5KTsKICAgIGNvdXQ8PHZhbDw8ZW5kbDsKCXJldHVybiAwOwp9