問題
구글 어시스턴트(Google Assistant) 팀과 안드로이드 오토(Android Auto) 팀이 음성 명령으로 운전할 수 있는 새로운 프로토타입 자동차를 함께 만들고 있다. 초기 프로토타입은 자동차 시뮬레이터에 연결된 휴대폰을 통해 동작한다. 그런데 불행히도 초기 테스터 중 한 명이 휴대폰을 변기에 떨어뜨려 마이크가 고장 나는 바람에, 새 기능을 사용하기가 더 어려워졌다. 그래도 이 기회를 놓치고 싶지 않아서, 어떻게든 사용하기 위해 당신의 도움이 필요하다.
초기 프로토타입은
테스터는 각 칸이 벽(wall)이거나, 위험(hazard)이거나, 혹은 비어 있도록 격자를 구성했다. 어떤 명령이 차를 벽으로 이동시키거나 격자 밖으로 나가게 한다면, 대신 아무 일도 일어나지 않는다. 어떤 명령이 차를 위험 칸으로 이동시키면, 차는 그 이후로는 더 이상 어떤 명령도 실행할 수 없다.
테스터는 빈 칸들 중 일부를 '흥미로운 출발점(interesting starts)'으로,
다른 일부를 '흥미로운 도착점(interesting finishes)'으로 표시해 두었다.
어떤 흥미로운 출발점과 흥미로운 도착점의 쌍이 운전 가능(drivable)하다는 것은,
출발점에서 시작해 음성 명령으로 차를 운전하여,
도착점에서 끝날 확률이 최소
入力
입력의 첫 줄에는 테스트 케이스 수
- 마침표(
.)는 흥미롭지 않은 빈 칸을 나타낸다. - 샵 기호(
#)는 벽이 있는 칸을 나타낸다. - 별표(
*)는 위험 칸을 나타낸다. - 영문 소문자(
a부터z)는 흥미로운 출발점인 빈 칸을 나타낸다. - 영문 대문자(
A부터Z)는 흥미로운 도착점인 빈 칸을 나타낸다.
出力
각 테스트 케이스마다
Case # 형식의 한 줄을 출력하라.
여기서 NONE이어야 한다.
그렇지 않다면
例題
4
1 2
aZ
4 4
a..c
**.*
.Y.#
bX#Z
2 2
a*
*Z
2 7
a*bcd*.
...*F#.
Case #1: aZ
Case #2: aY bX bY cY
Case #3: NONE
Case #4: dF