LC 0069 [E] Sqrt(x) - ALawliet/algorithms GitHub Wiki

class Solution(object):
    def mySqrt(self, x):
        l, r = 0, x
        while l <= r:
            m = (l + r) // 2
            if m**2 <= x < (m+1)**2:
                return m
            elif x < m**2:
                r = m - 1
            else:
                l = m + 1