/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main
(String[] args
) { int[] x = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
int y = binarySearch(x, 11);
}
public static int binarySearch(int[] arr, int value) {
int searchedIndex = -1;
int first = 0;
int last = arr.length - 1;
int mid;
while (first <= last) {
mid = (first + last) / 2;
if (arr[mid] == value) {
searchedIndex = mid;
break;
} else {
if (value < arr[mid]) {
last = mid - 1;
} else {
first = mid + 1;
}
}
}
return searchedIndex;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKCSAgICBpbnRbXSB4ID0gezEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMX07CgkgICAgaW50IHkgPSBiaW5hcnlTZWFyY2goeCwgMTEpOwoJICAgIFN5c3RlbS5vdXQucHJpbnRsbih5KTsKCX0KCQoJcHVibGljIHN0YXRpYyBpbnQgYmluYXJ5U2VhcmNoKGludFtdIGFyciwgaW50IHZhbHVlKSB7CgkgICAgaW50IHNlYXJjaGVkSW5kZXggPSAtMTsKCSAgICBpbnQgZmlyc3QgPSAwOwoJICAgIGludCBsYXN0ID0gYXJyLmxlbmd0aCAtIDE7CgkgICAgaW50IG1pZDsKCQoJICAgIHdoaWxlIChmaXJzdCA8PSBsYXN0KSB7CgkgICAgICAgIG1pZCA9IChmaXJzdCArIGxhc3QpIC8gMjsKCSAgICAgICAgaWYgKGFyclttaWRdID09IHZhbHVlKSB7CgkgICAgICAgICAgICBzZWFyY2hlZEluZGV4ID0gbWlkOwoJICAgICAgICAgICAgYnJlYWs7CgkgICAgICAgIH0gZWxzZSB7CgkgICAgICAgICAgICBpZiAodmFsdWUgPCBhcnJbbWlkXSkgewoJICAgICAgICAgICAgICAgIGxhc3QgPSBtaWQgLSAxOwoJICAgICAgICAgICAgfSBlbHNlIHsKCSAgICAgICAgICAgICAgICBmaXJzdCA9IG1pZCArIDE7CgkgICAgICAgICAgICB9CgkgICAgICAgIH0KCSAgICB9CgkKCSAgICByZXR1cm4gc2VhcmNoZWRJbmRleDsKCX0KfQ==