#NOIp303. 惊鸿(grace)

惊鸿(grace)

题目描述

给定一个 nnmm 列的仅包含小写字母的矩阵 AA

求从 (1,1)(1,1)(n,m)(n,m) 只向下或向右走,且路径上的所有字符按照顺序排列可以构成一个回文串的路径条数。答案对 993244853993244853 取模。

输入格式

从文件 grace.ingrace.in 中读入数据。

第一行两个正整数 n,mn,m

接下来 nn 行,每行一个长度为 mm 的字符串,表示给定的矩阵 AA

输出格式

输出到文件 grace.outgrace.out 中。

一行一个非负整数表示答案对 993244853993244853 取模后的结果。

样例 1 输入

3 4
noip
ffff
pion

样例 1 输出

2

样例 1 解释

满足条件的两条路径分别为:

  1. (1,1)(2,1)(2,2)(2,3)(2,4)(3,4)(1,1) → (2,1) → (2,2) → (2,3) → (2,4) → (3,4)
  2. (1,1)(1,2)(2,2)(2,3)(3,3)(3,4)(1,1) → (1,2) → (2,2) → (2,3) → (3,3) → (3,4)

样例 2 输入

4 5
wwwww
wwwww
wwwwa

样例 2 输出

0

样例 3

见右侧文件下的 grace3.ingrace3.ingrace3.ansgrace3.ans

样例 4

见右侧文件下的 grace4.ingrace4.ingrace4.ansgrace4.ans

数据范围与提示

对于所有测试数据,保证 1n,m5001≤n,m≤500,保证输入的矩阵仅包含英文小写字母。

每个测试点的具体限制见下表:

测试点编号 nn≤ mm≤ 特殊性质特殊性质
141∼4 1010
575∼7 2020
8108∼10 8080 8080
111311∼13 500500
141614∼16 500500 对于 i>1,j<mAi,j=Ai1,j+1∀i>1,j<m,A_{i,j}=A_{i−1,j+1}
172017∼20