#include <stdio.h>
int binary_search(int a[], int n, int x) {
int left = 0;
int right = n - 1;
while (left <= right) {
int mid = (left + right) / 2;
if (a[mid] == x) {
return mid;
} else if (a[mid] < x) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return -1;
}
int main(void) {
int n, x;
int a[100000];
for (int i = 0; i < n; i++) {
}
int ans = binary_search(a, n, x);
if (ans != -1) {
printf("a[%d] = %d\n", ans
, x
); } else {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgYmluYXJ5X3NlYXJjaChpbnQgYVtdLCBpbnQgbiwgaW50IHgpIHsKICAgIGludCBsZWZ0ID0gMDsKICAgIGludCByaWdodCA9IG4gLSAxOwoKICAgIHdoaWxlIChsZWZ0IDw9IHJpZ2h0KSB7CiAgICAgICAgaW50IG1pZCA9IChsZWZ0ICsgcmlnaHQpIC8gMjsKCiAgICAgICAgaWYgKGFbbWlkXSA9PSB4KSB7CiAgICAgICAgICAgIHJldHVybiBtaWQ7ICAgICAgCiAgICAgICAgfSBlbHNlIGlmIChhW21pZF0gPCB4KSB7CiAgICAgICAgICAgIGxlZnQgPSBtaWQgKyAxOyAgCiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmlnaHQgPSBtaWQgLSAxOyAKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gLTE7IAp9CgppbnQgbWFpbih2b2lkKSB7CiAgICBpbnQgbiwgeDsKICAgIGludCBhWzEwMDAwMF07CgogICAgc2NhbmYoIiVkICVkIiwgJm4sICZ4KTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgc2NhbmYoIiVkIiwgJmFbaV0pOwogICAgfQoKICAgIGludCBhbnMgPSBiaW5hcnlfc2VhcmNoKGEsIG4sIHgpOwoKICAgIGlmIChhbnMgIT0gLTEpIHsKICAgICAgICBwcmludGYoImFbJWRdID0gJWRcbiIsIGFucywgeCk7CiAgICB9IGVsc2UgewogICAgICAgIHByaW50Zigibm90IGZvdW5kXG4iKTsKICAgIH0KCiAgICByZXR1cm4gMDsKfQ==