在 Python 中检查我们是否可以通过跳跃到达位置 n 的程序

假设有一条从 1 到 n 的数轴。首先我们在位置0,跳一步到1,然后跳两个位置到位置3,然后跳三个位置到6,依此类推。我们必须检查是否保持这一点,我们是否可以到达位置 n。

因此,如果输入像 n = 21,那么输出将为 True,因为 1+2+3+4+5+6 = 21

示例

让我们看看以下实现以获得更好的理解 -

from math import sqrt
def solve(n):
   j=(1+sqrt(1+8*n))/2
   if abs(j-int(j))<=0:
      return True
   else:
      return False

n = 21
print(solve(n))

输入

21
输出结果
True

猜你喜欢