할마
면접 대비시간 제한1초메모리 제한1024 MB
격자판에서 '#' 말이 한 번의 이동으로 도달할 수 있는 빈 칸을 찾아 '+'로 표시합니다.
문제
할마는 전통적인 두 명 또는 네 명용 보드게임으로, 또는 칸의 판에서 진행한다. 12월에 산타클로스가 바쁠 때, 산타의 아내는 한 명이 하는 변형 규칙으로 게임을 한다. 변화를 주려고 그녀는 서로 다른 직사각형 판을 쓴다.
게임을 시작할 때 플레이어의 말은 판의 한 구석에 있는 시작 영역에 놓여 있다. 목표는 이 말들을 대각선 반대편 구석의 도착 영역으로 옮기는 것이다. 말을 움직이는 방법은 두 가지다.
- 한 칸 이동은 말을 같은 행이나 같은 열에 있는 빈 이웃 칸으로 옮긴다. 한 칸 이동은 한 칸만 움직인다.
- 점프는 이웃한 말을 넘어, 같은 행이나 같은 열에서 그 바로 뒤에 있는 빈 칸으로 말을 옮긴다. 한 번에 한 개의 말만 넘을 수 있다. 체커와 달리 말을 넘는다고 해서 넘어간 말에는 아무 영향이 없다. 점프 이동은 같은 말로 연속해서 한 번 이상 점프하는 것으로 이루어질 수 있다. 점프를 이어 가는 길이가 최대일 필요는 없으며, 플레이어는 더 뛸 수 있더라도 원하는 때에 이동을 끝낼 수 있다.
판의 상태를 입력받아, 주어진 말이 한 번의 이동으로 도달할 수 있는 모든 칸을 찾는 프로그램을 작성하라.
입력
첫 줄에 판의 행 수 과 열 수 이 주어진다 ().
다음 줄에는 각각 정확히 개의 문자가 주어진다. 점 '.'은 빈 칸, 샵 '#'은 조사할 대상 말, 별표 '*'는 그 밖의 말을 뜻한다.
출력
정확히 줄을 출력하라. 각 줄은 정확히 개의 문자로 이루어진다. 입력으로 주어진 판과 같되, 조사 중인 말이 한 번의 이동으로 도달할 수 있는 칸을 더하기 기호 '+'로 표시한다.