#agc023b. [agc023_b]Find Symmetries
[agc023_b]Find Symmetries
問題文
すぬけ君は、 行 列からなるマス目状に区切られた盤面を つ持っています。 どちらの盤面についても、上から 行目、左から 列目のマスをマス と呼ぶことにします。
つめの盤面には、すべてのマスに つの英小文字が書かれています。 マス に書かれている文字は です。 つめの盤面には、まだ何も書かれていません。
すぬけ君は、次のような手順で つめの盤面に文字を書き込みます。
-
まず、 つの整数 ( ) を選ぶ。
-
すべてのマスに文字を書き込む。 具体的には、 つめの盤面のマス に、 つめの盤面のマス の文字を書き込む。 ここで、 行目と表される行は 行目を意味する。 同様に、 列目と表される列は 列目を意味する。
操作後、 つめの盤面がよい盤面であるとは、すべての ( ) に対して、 マス とマス にかかれている文字が等しいことを意味します。
つめの盤面がよい盤面になるような整数 ( ) の選び方が何通りあるかを求めてください。
制約
- ( ) は英小文字
入力
入力は以下の形式で標準入力から与えられる。
出力
つめの盤面がよい盤面になるような整数 ( ) の選び方が何通りあるかを出力せよ。
入力例 1
2
ab
ca
出力例 1
2
各 の組に対して、 つめの盤面は図のようになります。 つめの盤面がよい盤面となっているのは と のときです。 よって答えは です。
入力例 2
4
aaaa
aaaa
aaaa
aaaa
出力例 2
16
どのように を選んでも、 つめの盤面はよい盤面になります。
入力例 3
5
abcde
fghij
klmno
pqrst
uvwxy
出力例 3
0
どのように を選んでも、 つめの盤面はよい盤面になりません。