leetcode367. Valid Perfect Squar

2020-06-28  本文已影响0人  就是果味熊

原题链接https://leetcode.com/problems/valid-perfect-square/

Given a positive integer num, write a function which returns True if num is a perfect square else False.

Follow up: Do not use any built-in library function such as sqrt.

Example 1:

Input: num = 16
Output: true
Example 2:

Input: num = 14
Output: false

class Solution:
    def isPerfectSquare(self, num: int) -> bool:
        if not isinstance(num, int):
            return -1
        start, end = 1, num
        while start <= end:
            mid = start + ((end - start) >> 1)
            target = mid ** 2
            if num == target:
                return True
            elif num > target:
                start = mid + 1
            else:
                end = mid - 1
        return False
        

上一篇 下一篇

猜你喜欢

热点阅读