아티초크는 오목 AI 토너먼트 대회인 Gomocup에 참여하려고 한다. 아티초크가 참여하려고 하는 부문은 Renju 부문으로, 렌주룰을 기반으로 진행된다.
렌주룰은 선 플레이어의 이점을 줄이기 위해 흑돌의 수를 제한하는 금수 규정을 두었는데, 자세한 내용은 다음과 같다.
아티초크는 AI에게 금수 판정을 학습시키는 것을 최우선 과제로 삼았고, 학습을 위해 대량의 기보 데이터를 준비했다. 하지만 구현에 약한 아티초크는 금수 판정 로직을 구현하지 못하여, 준비한 데이터에 라벨이 잘 부여됐는지 판단할 수 없었다. 아티초크를 위해 데이터가 올바른지 대신 검증해 보자.
처음 15줄에는 15개의 알파벳으로 기보 데이터, 즉 오목판의 상태가 주어진다. 검은 오목알이 놓인 자리는 B, 흰 오목알이 놓인 자리는 W, 오목알이 놓이지 않은 자리는 X로 표시되며, 각 알파벳은 붙어서 입력으로 주어진다. 이때, 주어진 오목판에는 장목과 오목이 존재하지 않음이 보장된다.
16번째 줄에는 금수를 판정할 위치를 나타내는 두 정수 x,y(1≤x,y≤15)가 주어진다. 이는 x행 y열에 흑돌을 두었을 때 금수가 되는지 여부를 판정해야 함을 의미한다.
17번째 줄에는 데이터의 라벨이 입력으로 하여 출력한 결과가 주어진다. 장목금수 데이터는 6, 44금수 데이터는 44, 33금수 데이터는 33, 금수가 아닌 데이터는 X가 입력으로 주어진다. 이때, 라벨의 우선순위는 장목금수, 44금수, 33금수 순으로 높으며, 16번째 줄에서 주어진 자리가 여러 종류의 금수 조건을 충족하는 경우, 그중 우선순위가 가장 높은 라벨을 부여하는 것을 원칙으로 한다.
데이터가 올바르다면 AC를, 올바르지 않다면 WA를 출력한다.