# your code goes here
array = [0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9]
def lower(a, val, left, right):
if left >= right:
return left
mid = (left + right) // 2
if a[mid] > val:
return lower(a, val, left, mid-1)
else:
return lower(a, val, mid+1, right)
for i in range(10):
print lower(array, i , 0, len(array)-1)
IyB5b3VyIGNvZGUgZ29lcyBoZXJlCmFycmF5ID0gWzAsMCwxLDEsMiwyLDMsMyw0LDQsNSw1LDYsNiw3LDcsOCw4LDksOV0KCgpkZWYgbG93ZXIoYSwgdmFsLCBsZWZ0LCByaWdodCk6CiAgICBpZiBsZWZ0ID49IHJpZ2h0OgogICAgICAgIHJldHVybiBsZWZ0CiAgICBtaWQgPSAobGVmdCArIHJpZ2h0KSAvLyAyCgogICAgaWYgYVttaWRdID4gdmFsOgogICAgICAgIHJldHVybiBsb3dlcihhLCB2YWwsIGxlZnQsIG1pZC0xKQogICAgZWxzZToKICAgICAgICByZXR1cm4gbG93ZXIoYSwgdmFsLCBtaWQrMSwgcmlnaHQpCgpmb3IgaSBpbiByYW5nZSgxMCk6CiAgICBwcmludCBsb3dlcihhcnJheSwgaSAsIDAsIGxlbihhcnJheSktMSk=