题目描述
【题目描述】
农夫约翰的农场是N×N网格的形状(2≤N≤18),每个网格用字母表中的一个字母标记。例如:
ABCD
BXZX
CDXB
WCBA
奶牛贝西每天都从左上角的田地走到右下解的田地,每走一步,要么向右走一块田地,要么向下走一块田地。贝西记录下了她在这个过程中产生的字符串,这些字符串是由她走过的字母组成的。然而,如果这个字符串是一个回文(向前读和向后读是一样的),她会感到非常困惑,因为她不知道她走的是哪个方向。
请帮助贝西确定她在走路时能组成多少个不同的回文。形成同一个回文的不同方法只能算一次;例如,有几种路径可以产生上面的回文ABXZXBA,但Bessie只能形成四个不同的回文,ABCDCBA, ABCWCBA, ABXZXBA, ABXDXBA。
【输入格式】(palpath.in)
第一行输入包含N,其余N行包含字段网格的N行。每行包含N个字符,范围为A..Z。
【输出格式】(palpath.out)
请输出贝西能形成的不同回文的数目。
【样例输入】:
4
ABCD
BXZX
CDXB
WCBA
【样例输出】:
4