학습
시험

체크 3

난이도
BEGINNER

문제 설명

8 × 8 크기의 체스판에서 킹(king)과 나이트(knight)가 각각 한 개씩 있습니다. 체스판의 좌표는 왼쪽 위가 (1, 1), 오른쪽 아래가 (8, 8)이라고 하고 나이트가 킹을 공격할 수 있는지 판별하려고 합니다.
나이트는 L자 형태로 이동합니다. 즉, 한 방향으로 두 칸 이동한 뒤 직각 방향으로 한 칸 이동하는 방식으로 움직이며, 이와 같은 이동 방법은 총 8가지가 있습니다. 나이트는 이동 시 다른 기물을 뛰어넘을 수 있습니다.

체스판 위에서 킹의 좌표 king(=[kx, ky])과 나이트의 좌표 knight(=[nx, ny])이 주어졌을 때 나이트가 킹을 공격할 수 있으면 true, 그렇지 않으면 false를 반환하는 solution 함수를 작성하시오.


제한 사항

  • king과 knight는 서로 다른 위치에 있습니다.
  • kx, ky, nx, ny 각 좌푯값은 1 이상 8 이하의 자연수입니다.
  • 체스판에는 킹과 나이트 각각 1개씩 이외에 다른 기물이 없습니다.

예시 테스트케이스 설명

테스트케이스 번호 king knight return
1 [4, 4] [5, 6] true
2 [1, 1] [2, 4] false
3 [7, 7] [5, 6] true

1번 테스트케이스 설명

  • 나이트가 [5, 6], 킹이 [4, 4]에 있습니다. 나이트가 위로 한 칸, 왼쪽으로 두 칸 이동하여 킹을 공격할 수 있으므로 true를 반환합니다.

2번 테스트케이스 설명

  • 나이트가 [2, 4], 킹이 [1, 1]에 있습니다. 나이트가 어느 방향으로 이동하더라도 킹을 공격할 수 없으므로 false를 반환합니다.

3번 테스트케이스 설명

  • 나이트가 [5, 6], 킹이 [7, 7]에 있습니다. 나이트가 아래로 두 칸, 오른쪽으로 한 칸 이동하여 킹을 공격할 수 있으므로 true를 반환합니다.