参考代码:
class Solution:
def findPosition(self, A, target):
if not A:
return -1
start, end = 0, len(A) - 1
while start + 1 < end:
mid = start + (end - start)//2
if A[mid]<target:
start = mid
elif A[mid]>target:
end = mid
else:
return mid
if target -A[start]< A[end] - target:
return start
else:
return end