例2 判断平方数

余生颓废 提交于 2019-12-03 21:30:30
#示例: 输入num=16, 输出True, sqrt(16)=4; 输入num=15, 输出False, sqrt(15)=3.87

class Solution:
    def isPerfectSquare(self, num):
        l=0
        r=num
        while (r-l > 1):
            mid=(l + r) / 2
            if (mid * mid <= num):
                l = mid
            else:
                r = mid
        ans = 1
        if ( l * l < num ):
            ans = r
        return ans * ans == num

#主函数
if __name__ == "__main__":
    num = 16
    print("初始值: ", num)
    solution = Solution()
    print("结果: ", solution.isPerfectSquare(num))
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!