stdinの迷路とエントリポイントが与えられたら、stdoutの出口へのパスを出力するプログラムを作成します。プログラムが迷路ごとに(迷路内のすべてのポイントを通過する)簡単なパスを生成しない限り、どのパスでも構いません。
入力では、壁は#
で、エントリポイントはでマークされ@
ます。出力で迷路とパスを描画するために、それらがすべて明確である限り、任意の文字を使用できます。
あなたはそれを仮定するかもしれません:
- 入口点と出口点は入力の端にあります
- 入力のすべての行は同じ長さです
- 迷路は解決可能であり、サイクルはありません
- 出口は1つのみ
(Unicode)文字数による最短の解決策が優先されます。
例
(入力にはスペースが埋め込まれることに注意してください)
####
# #
@ #####
# #
#
#######
####
# #
@*#####
#* #
#******
#######
### ###################
### # #
## ######### # #
# ##### #
############### #@##
###*###################
###*********#*********#
## *#########* # *#
# *********** #####**#
############### #@##