使用 Python 檢查是否可以在 N 步內從 (0, 0) 移動到 (x, y)


假設我們有一個座標點 (x, y) 和另一個值 n。我們必須檢查是否可以使用 n 步從 (0, 0) 移動到 (x, y)。我們可以向左、右、上、下四個方向移動。

因此,如果輸入類似於 p = (2, 1) n = 3,則輸出將為 True,我們可以向右移動兩步,然後向上移動一步。

為了解決這個問題,我們將遵循以下步驟 -

  • 如果 n >= |p 的 x| + |p 的 y| 且 (n -(|p 的 x| + |p 的 y|)) 為偶數,則
    • 返回 True
  • 返回 False

示例

讓我們看看以下實現以獲得更好的理解 -

 現場演示

def solve(p, n):
   if n >= abs(p[0]) + abs(p[1]) and (n - (abs(p[0]) + abs(p[1]))) % 2 == 0:
      return True
   return False
p = (2, 1)
n = 3
print(solve(p, n))

輸入

(2, 1), 3

輸出

True

更新於: 2021年1月18日

203 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.