#codefestival2016finali. [codefestival_2016_final_i]Reverse Grid
[codefestival_2016_final_i]Reverse Grid
题目描述
Snuke有一个 行 列的网格。第 行第 列的方格中包含一个字符 。
他可以对网格执行以下两种操作:
- 行反转:选择一行,翻转该行中的方格的顺序。
- 列反转:选择一列,翻转该列中的方格的顺序。
例如,先反转第 行,然后反转第 列,结果如下图所示:
通过以任意次数以任意顺序执行这些操作,可以得到多少种字符在网格上的放置方式?
约束条件
- 是小写英文字母 (
a
-z
)。
输入
输入以以下格式从标准输入给出:
输出
打印可以获得的字符放置方式的数量,对 取模()。
示例输入 1
2 2
cf
cf
示例输出 1
6
可以得到以下 种字符放置方式:
示例输入 2
1 12
codefestival
示例输出 2
2