Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem có thể chuyển từ (0, 0) sang (x, y) trong N bước trong Python hay không

Giả sử chúng ta có một điểm tọa độ (x, y) và một giá trị khác n. Chúng ta phải kiểm tra xem chúng ta có thể chuyển từ (0, 0) sang (x, y) bằng n bước hay không. Chúng ta có thể di chuyển theo bốn hướng trái, phải, lên và xuống.

Vì vậy, nếu đầu vào là p =(2, 1) n =3, thì đầu ra sẽ là True, chúng ta có thể di chuyển hai bước sang phải sau đó một bước theo hướng lên.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • nếu n> =| x của p | + | y ​​của p | và (n - (| x của p | + | y ​​của p |)) là chẵn thì
    • trả về True
  • trả về Sai

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

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))

Đầu vào

(2, 1), 3

Đầu ra

True