实例003:完全平方数

100个不同类型的python语言趣味编程题

实例003:完全平方数

题目 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

程序分析 因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:。

思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。

至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。

n=0
while (n+1)**2-n*n<=168:
    n+=1
for i in range((n+1)**2):
    if i**0.5%1==0 and (i+168)**0.5%1==0:
        print(i - 100)
#解本问题有多种方法,此方法并不是标准答案,读者可以自己尝试各种方法。

如果你喜欢我的文章,请滑到下方点个推荐再走. ,以给我动力哦;转载请注名出处。然后..请多来做客鸭。

注:陆续会更新。欢迎大家在评论区分享出你们的方案让我们一起进步。

posted @ 2020-03-16 10:56  虫萧  阅读(403)  评论(0编辑  收藏  举报