给定两个整数a
和b
,是否有一种有效的方法来测试是否存在另一个n
整数?a ≤ n2 < b
我不需要知道n
,只知道是否存在至少一个这样的n
,所以我希望避免计算区间内任何数字的平方根。
虽然测试单个整数是否是完美平方比计算平方根更快,但范围可能很大,我也希望避免对范围内的每个数字执行此测试。
例子:
intervalContainsSquare(2, 3)
=> 假的intervalContainsSquare(5, 9)
=> false (注意:9 在此区间之外)intervalContainsSquare(9, 9)
=> false(此区间为空)intervalContainsSquare(4, 9)
=> true (4 在这个区间内)intervalContainsSquare(5, 16)
=> true (9 在这个区间内)intervalContainsSquare(1, 10)
=> true(1、4和9都在这个区间内)