NumPy allowed · plain Python earns 10 bonus points
Implement classic binary search from scratch -- the O(log n) algorithm every tree-height-bounded search, and half of this track's own name, is built on.
Implement binary_search(nums, target): maintain a shrinking [lo, hi] window; at each step compare target to the midpoint and discard the half that cannot contain it.
binary_search(nums: list[int], target: int) -> int