Skip to main content

range_find

  1. Find the left and right occurance of 9

A = [2,4,5,8,9,9,23,56,789]

s = 9
i = 0
j = int((len(A)-1)/2)
lp = -1
rp = -1

while (i<j):
m = A[j]
if (s > m):
i = j/2
elif (s < m):
j = j/2
elif s == m:
lp = j
rp = j
print(f"{lp}, {s}, {m}")
while (A[lp] == s or A[rp] == s):
if A[lp-1] == s:
lp = lp-1
if A[rp+1] == s:
rp = rp+1
print(f"{lp}, {s}, {m}")
if (A[lp-1] < s and A[rp+1] > s):
break

break

print(f"{lp}, {rp}")