체스 전투
면접 대비시간 제한2초메모리 제한1024 MB
서로 다른 칸에 놓인 흰색 기물과 검은색 기물이 주어질 때, 각 기물이 상대를 공격하는지 판정해 NONE, WHITE, BLACK, BOTH 중 하나를 출력한다.
문제
최근에 페티야는 체스를 두기 시작했다.
체스는 두 명의 플레이어가 하는 게임이며, 각 플레이어는 처음에 8개의 기물과 8개의 폰을 가진다. 이 문제에서는 폰을 고려하지 않는다.
나이트를 제외한 어떤 기물도 자신이나 상대의 기물을 뛰어넘을 수 없다. 자신의 기물이 있는 칸으로 이동할 수 없다. 상대의 기물이 있는 칸으로 이동하면 그 기물은 보드에서 제거된다.
기물은 다음과 같이 이동한다:
- 킹 --- 수직, 수평 또는 대각선으로 인접한 칸으로 이동한다;
- 퀸 --- 수직, 수평 또는 대각선으로 임의의 거리만큼 이동한다;
- 룩 --- 수직 또는 수평으로 임의의 거리만큼 이동한다;
- 비숍 --- 대각선으로 임의의 거리만큼 이동한다;
- 나이트 --- <<Г>>자 모양으로 이동한다: 수평으로 1칸, 수직으로 2칸, 또는 그 반대로 수직으로 1칸, 수평으로 2칸 이동한다.
하나의 흰색 기물과 하나의 검은색 기물의 위치가 주어진다. 기물들이 서로를 공격하는지 판단하고, 공격한다면 어느 쪽이 어느 쪽을 공격하는지 출력하시오.
입력
입력 파일의 첫 번째 줄에는 흰색 기물의 종류와 위치가 주어진다. 두 번째 줄에는 검은색 기물의 종류와 위치가 주어진다.
각 기물은 세 개의 문자로 이루어진 문자열로 주어진다. 첫 번째 문자는 기물의 종류를 나타낸다: <<B>> --- 비숍, <<N>> --- 나이트, <<R>> --- 룩, <<Q>> --- 퀸, <<K>> --- 킹. 두 번째 문자는 수평 위치(<<a>>부터 <<h>>까지)를 나타낸다. 세 번째 문자는 수직 위치(<<1>>부터 <<8>>까지)를 나타낸다.
기물들은 체스판의 서로 다른 칸에 위치한다고 보장된다.
출력
출력 파일에는 문제의 답을 한 단어로 출력한다.
어떤 기물도 다른 기물을 공격하지 않으면 <<NONE>>을 출력한다.
두 기물이 서로를 공격하면 <<BOTH>>를 출력한다.
흰색 기물이 검은색 기물을 공격하고 검은색 기물이 흰색 기물을 공격하지 않으면 <<WHITE>>를 출력한다.
검은색 기물이 흰색 기물을 공격하고 흰색 기물이 검은색 기물을 공격하지 않으면 <<BLACK>>을 출력한다.