#Lutece3352. 能量采集
能量采集
Description
你正在玩一个游戏。游戏中一共有两种能量,分别表示为 A
和 B
。
游戏地图可以看成是一张 行 列的地图,第 行第 列的格子所含有的能量是 A 或 B 的其中一种。你从 出发,走到 。你只能往下或往右走。
你有一个容量为 的能量容器。这个容器是一个队列,即当收集到的能量总量大于 时,越早收集到的能量会越先从队列弹出(即消失),直到能量总量等于 为止。
你所属的阵营是 A,即每当该容器内的能量全是种类 A 并且容器装满了的时候,你所属的阵营的分数会加一(之后容器内的能量不会消失)。当你站在任意格子上时,不论该格子内的能量是哪一种,你都会收集一单位的能量到容器内。
你想知道:对于所有 条可能的路径,你期望能够给自己阵营加多少分?
Input
第一行三个正整数 ,含义见题面。
接下来输入游戏地图:一共输入 行,每行输入一个长度为 的只含有 A
, B
的字符串。
Output
输出一个整数,表示期望加的分数对 取模后的结果。
Samples
2 3 2
AAA
BBA
332748119
Note
一共有三条路径,分别收集到的能量顺序为:AAAA
, AABA
, ABBA
。这三条路径给阵营加的分数分别为 ,故答案为 。
Resources
The 21st UESTC Programming Contest Preliminary