솔리테어

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

솔리테어는 $8 \times 8$ 체스판에서 진행하는 게임이다. 행과 열은 $1$부터 $8$까지 번호가 매겨져 있으며, 행은 위에서 아래로, 열은 왼쪽에서 오른쪽으로 센다.

판 위에는 서로 구별되지 않는 말 네 개가 놓여 있다. 한 번의 이동에서 다음 두 가지 중 하나를 할 수 있다.

  • 말을 상하좌우로 인접한 빈 칸으로 옮긴다, 또는
  • 상하좌우로 인접한 칸에 말이 하나 있을 때 그 말을 뛰어넘어 바로 그 너머의 빈 칸에 내려놓는다.

위 그림의 배치에서 $4$행 $4$열의 말은 네 가지로 움직일 수 있다. 한 행 위로, (바로 아래 말을 뛰어넘어) 두 행 아래로, 한 열 왼쪽으로, 또는 (바로 오른쪽 말을 뛰어넘어) 두 열 오른쪽으로 갈 수 있다.

두 배치가 주어질 때, 첫 번째 배치에서 최대 $8$번의 이동으로 두 번째 배치에 도달할 수 있는지 판단하라.

입력

두 줄이 주어지며, 각 줄은 말 네 개의 배치 하나를 나타낸다.

각 줄에는 정수 $8$개 $a_1, a_2, \ldots, a_8$이 공백 하나로 구분되어 주어진다. $1 \le j \le 4$인 각 $j$에 대해 쌍 $(a_{2j-1}, a_{2j})$는 말 하나의 행 번호와 열 번호이다. 모든 좌표는 $1$ 이상 $8$ 이하이며, 한 배치 안의 네 말은 서로 다른 네 칸을 차지한다.

출력

두 번째 배치가 첫 번째 배치에서 최대 $8$번의 이동으로 도달 가능하면 YES를, 그렇지 않으면 NO를 출력한다.