from math import floor def bsa(a, n, t): lft = 0 rgt = n -1 while lft <= rgt: m = floor((lft + rgt) / 2) if a[m] < t: lft = m+1 elif a[m] > t: rgt = m-1 else: return m return -1