アローダイス (arrow dice) とは,立方体の各面の中央部にその面を構成する 4 辺のいずれかの中心を向いた矢印が 1 つずつ書かれたものである.図 F-1 にその一例を示す.
ここで,2 つのアローダイスの相違度を「それぞれを任意に回転させたあとで立方体として完全に重なり合うように重ね合わせたときに,対応する面について向きの異なる矢印の個数の最小値」と定義する.
n 個のアローダイスが与えられるので,すべてのペアに対してその相違度を求めてほしい.
入力は最大 50 データセットからなり,各データセットは次の形式で表される.
n
x1,1x1,2...x1,5
x2,1x2,2...x2,5
...
x5n,1x5n,2...x5n,5
各データセットの 1 行目には与えられるアローダイスの個数 n (2 ≤ n ≤ 200),続く 5n 行には n 個のアローダイスの情報が 5 行ずつ与えられる.5i-4 行目から 5i 行目までの入力が i 個目のアローダイスの情報である.
各アローダイスは 5 × 5 のグリッドで表現される. グリッド上で '^', 'v', '<', '>' はそれぞれ上下左右を向いた矢印が書かれたマスを表し,'.' は余白を表す. グリッドから余白を取り除いて得られる図形に対して,隣接するマスの間を山折りにして得られる立体がこのグリッドが表現するアローダイスである.入力として与えられるどの図形に関しても,正しく組み立てることでアローダイスが 1 つ出来上がることが保証されている. 例えば,サンプルの最初のケースの 1 つ目の入力が表す図形は図 F-2 の通りであり,図 F-1はこれを組み立てて得られるアローダイスを表している.
入力の終わりは 1 つのゼロからなる行で表される.
各データセットに対して,i 行目の j 文字目に i 個目のアローダイスと j 個目のアローダイスの相違度を出力せよ.つまり,長さ n の数字列を n 行出力することになる.なお,2 つのアローダイスの相違度は 1 桁の整数となることが証明できる.
3 ..^.. .<v>. ..>.. ..<.. ..... ..^.. .<^>. ..>.. ..<.. ..... ..>.. ..^v. .^>.. .v... ..... 8 ..<^. ...^< ...<. ...<. ..... .<... <>... .^<.. .v... ..... ..... ..... .>... ^>><. <.... ..... ...<. ..v^. ..>.. .<v.. ..... ...<. ..^v. ...<> ...>. ..... ...^. ..>v. .v^.. .<... ..... ..<.. .vv.. ^v... .^... ..... ....> .v^vv ...<. ..... 0
010 101 010 02222232 20432043 24013422 23103331 22330223 20432043 34232402 23213320