367. Valid Perfect Square

def isPerfectSquare(self, num):
        """
        :type num: int
        :rtype: bool
        """
        x = num
        while x * x > num:
            x = (x + num / x) / 2
        return x * x == num
def isPerfectSquare(self, num):
        """
        :type num: int
        :rtype: bool
        """
        if num < 0: return False
        l, r = 0, num
        while l <= r:
            m = l + (r - l) / 2
            if m * m == num:
                return True
            elif m * m < num:
                l = m + 1
            else:
                r = m - 1
        return False

results matching ""

    No results matching ""