Rails on Tiles yokohama.rb 2016.7.9 問題

問題の概要

Rail の書かれているタイルが16枚、4×4 に並んでいる。
Rail にそって進んだ場合に通過するタイルの位置を計算せよ。
タイルは、以下の4種類がある。


名前 0 1 2 3
形状

詳細

a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p

スタート地点は、「b」のマスの上。
ドクロマークに到達すると、終了。4×4 の領域の外に行っても終了。 終了するまでに進入したマスを、順に並べた文字列を出力する。
各マスの名前は右図の通り。左上から順に a〜p のという名前がついている。

入力

入力は
0113/1201/2201/2100
こんな感じ。
a〜p のマスの形状が順に並んでいる。行ごとにスラッシュ区切り。行内は区切りなし。

出力

出力は、進入したマスの名前。区切り文字はない。
ドクロマークのマスに入って終了した場合、ドクロマークのマス目まで出力すること。
bcgfeabfjnoklpo
こんな感じ。

補足

サンプルデータ

# 入力 期待 状況
0 0113/1201/2201/2100 bcgfeabfjnoklpo




1 2110/2013/2210/0122 bcgh




2 2222/2130/2121/2002 bfg




3 0021/2212/2102/1220 baeimnoplhdcbfjkgfe




4 0213/1221/0220/1103 bfjnokgcbaefghlkjimn




5 3201/3120/3333/3333 bfghdcgk




6 3233/3233/3133/3333 bfjk




7 3333/3333/3333/3333 b




8 1212/1201/2123/2220 bfjkl




9 2212/3102/1002/2100 bfgcba




10 0023/2221/1102/0031 baeijnm




11 1121/3120/0212/1120 bcdhgfba




12 2202/3211/2120/1210 bfjklhgcd




13 3201/3211/1111/0100 bfjkonjie




14 0121/1120/1111/1211 bcdhgfbaefjkop




15 1212/1213/2103/0213 bfjkgfea




16 1121/2212/1323/3031 bcdhl




17 0030/1230/1121/0031 baefg




18 2223/1211/0002/1200 bfjimnokl




19 3210/0033/0201/0130 bfei




20 0213/2220/0021/3002 bfjim




21 2121/2112/1110/1010 bcdhlkgfba




22 0113/1003/2303/2220 bcgfj




23 2202/1110/1302/0313 bfgkj




24 1211/3202/2102/0222 bfjkgh




25 3113/0002/0112/1022 bcgfjko




26 1200/3000/0121/0121 bfe




27 2221/1122/1031/2200 bfgh




28 1202/0121/0222/1300 bfghlpo




29 0002/1012/1021/3300 baefbc




30 0211/1200/2220/2103 bfjnokghdc




ソースコードに貼り付けるためのテストデータ