输入两个正整数A, B,求[A, B]内完全平方数的个数。( 1 ≤ A ≤ B ≤ 10^9 ) 测试时输入有极大的数,如:385793959 712365911 ,因此要用long类型存储。
时间: 2024-06-14 09:04:10 浏览: 117
有效的完全平方数(二分查找)1
完全平方数是指一个数的平方根是整数的数。要求[A, B]内完全平方数的个数,可以遍历从A到B的每个数,判断该数是否是完全平方数。
以下是一个示例代码:
```python
import math
def countPerfectSquares(A, B):
count = 0
for num in range(A, B+1):
if math.isqrt(num) ** 2 == num:
count += 1
return count
A = 385793959
B = 712365911
count = countPerfectSquares(A, B)
print(count)
```
该代码首先导入math模块,然后定义了一个函数`countPerfectSquares`来计算[A, B]内完全平方数的个数。在函数中,使用一个循环遍历从A到B的每个数,然后使用`math.isqrt`函数来判断该数是否是完全平方数。如果是完全平方数,则计数器`count`加1。最后返回计数器的值。
在主程序中,给定了A和B的值,然后调用`countPerfectSquares`函数来计算完全平方数的个数,并将结果打印出来。
阅读全文