|
【题目】
【方法一】 由于1+3+5+7+9+…+(2n-1) = (1+(2n-1))/2 = n^2,即完全平方数n^2肯定等于前n个连续奇数的和。 所以可以利用这个特点进行判断。
代码:
结果:
还好吧这个方法。
【方法二:二分查找法】 使用二分查找法。
代码:
结果:
分析: 改成:long a = mid*mid,则会超时。使用mid*0.1*mid则可以,不知道有什么说法。
|
本文介绍并对比了两种判断一个数是否为完全平方数的方法:一是利用连续奇数和的特性,二是采用二分查找法。第一种方法基于数学公式1+3+5+...+(2n-1)=n^2,第二种方法通过二分查找提高效率。
|
【题目】
【方法一】 由于1+3+5+7+9+…+(2n-1) = (1+(2n-1))/2 = n^2,即完全平方数n^2肯定等于前n个连续奇数的和。 所以可以利用这个特点进行判断。
代码:
结果:
还好吧这个方法。
【方法二:二分查找法】 使用二分查找法。
代码:
结果:
分析: 改成:long a = mid*mid,则会超时。使用mid*0.1*mid则可以,不知道有什么说法。
|

被折叠的 条评论
为什么被折叠?