Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 N 단계로 (0, 0)에서 (x, y)로 이동할 수 있는지 확인

<시간/>

좌표점(x, y)과 다른 값 n이 있다고 가정합니다. n 단계를 사용하여 (0, 0)에서 (x, y)로 이동할 수 있는지 여부를 확인해야 합니다. 왼쪽, 오른쪽, 위, 아래 4방향 중 어느 방향이든 움직일 수 있습니다.

따라서 입력이 p =(2, 1) n =3과 같으면 출력은 True가 됩니다. 오른쪽으로 두 단계 이동한 다음 위쪽 방향으로 한 단계 이동할 수 있습니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • n>=|p의 x| + |y의 p| 그리고 (n -(|x of p| + |y of p|)) 가 짝수이면
    • 참 반환
  • 거짓을 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

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