Chomp
시간 제한1초메모리 제한128 MB
3행 Chomp 판마다 승패를 판정하고 승리 위치에서는 패배 위치로 보내는 수를 출력합니다.
문제
Chomp는 직사각형 초콜릿을 정사각형 칸으로 나눈 판 위에서 두 사람이 번갈아 두는 게임이다. 자기 차례가 된 사람은 남아 있는 칸 하나를 골라 먹는데, 고른 칸과 열 번호가 같거나 더 크고 행 번호도 같거나 더 큰 칸을 모두 함께 먹는다. 왼쪽 맨 아래 칸에는 독이 들어 있고, 이 칸을 먹을 수밖에 없게 된 사람이 진다.
열은 왼쪽부터 으로, 행은 아래부터 으로 번호를 매긴다. 독이 든 칸은 열 행이다.
어떤 위치에서 상대를 지는 위치로 보내는 수가 하나라도 있으면 그 위치는 이기는 위치다. 어떤 수를 두어도 독이 든 칸을 먹게 되거나 상대에게 이기는 위치를 넘겨주면 그 위치는 지는 위치다. 예를 들어 판과 두 팔의 길이가 같은 L자 판은 지는 위치다. 상대가 이쪽이 둔 수를 그대로 따라 두면 되기 때문이다. 판, 두 팔의 길이가 다른 L자 판, 한 줄짜리 판은 이기는 위치다.
이 문제에서는 행이 개이고 열이 최대 개인 Chomp를 푼다. 칸을 먹으면 그 오른쪽 위쪽 칸이 항상 함께 사라지므로 각 행에 남는 칸은 왼쪽부터 이어지는 연속된 칸이고, 게임 도중 나올 수 있는 위치는 아래 행에 남은 칸 수 , 가운데 행에 남은 칸 수 , 위 행에 남은 칸 수 세 값으로 정해진다. 이 값들은 을 만족한다.
주어진 위치가 이기는 위치인지 지는 위치인지 판정하고, 이기는 위치라면 다음에 먹어서 상대를 지는 위치로 보낼 칸을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 데이터 집합의 개수 가 주어진다. ()
다음 개 줄에는 각 줄마다 데이터 집합이 하나씩 주어진다. 한 줄에는 데이터 집합 번호 , 아래 행에 남은 칸 수 , 가운데 행에 남은 칸 수 , 위 행에 남은 칸 수 이 공백 하나를 사이에 두고 주어지며 이다. 데이터 집합은 서로 독립이다.
출력
각 데이터 집합마다 한 줄씩 출력한다.
지는 위치이면 데이터 집합 번호 , 공백 하나, 대문자 L을 출력한다.
이기는 위치이면 데이터 집합 번호 , 대문자 W, 다음에 먹을 칸의 열 번호와 행 번호를 공백 하나씩 사이에 두고 출력한다. 상대를 지는 위치로 보내는 수가 여러 개이면 열 번호가 가장 작은 수를 출력하고, 열 번호가 같은 수가 여럿이면 그중 행 번호가 가장 작은 수를 출력한다.