#ARC197A. 网格路径的并集
网格路径的并集
网格路径的并集
时间限制:2s
空间限制:512MB
题目描述
有一个 的网格,从上往下第 行、从左往右第 列的格子记为 。另给定一个长度为 的字符串 ,其中每个字符都是 D、R 或 ?。
初始时所有格子均为白色。你可以进行任意多次操作,每次操作依次执行以下步骤:
- 选择一个长度为 的字符串 。其中恰有 个
D和 个R;若 为D或R,则必须有 。 - 从格子 出发,按顺序执行 中的移动:
D表示向下移动一格,R表示向右移动一格。满足条件的 一定不会使你走出网格。 - 将本次经过的所有格子(包括起点和终点)染成黑色;已经是黑色的格子保持不变。
求最终最多能染黑多少个格子。
有 组测试数据,请分别求解。
输入格式
第一行一个整数 ,表示测试数据组数。
接下来每组测试数据包含两行:第一行两个整数 ,第二行一个字符串 。
输出格式
输出 行,第 行输出第 组测试数据的答案。
样例输入 1
4
4 5
D?DRR?R
4 5
DDRRDRR
4 5
???????
2 2
DR
样例输出 1
12
8
20
3
样例说明 1
对于第一组测试数据,第一次令 DRDRRDR,第二次令 DDDRRRR,可以将 个格子染成黑色。下图分别展示这两条路径。

数据范围
- ;
- ;
- 的长度为 ,且只包含
D、R、?; - 中
D的数量不超过 ,R的数量不超过 ; - 所有测试数据中 。
| 子任务编号 | 分值 | 特殊限制 |
|---|---|---|
| 1 | 20 | 且每组均满足 |
| 2 | 且每组均满足 | |
| 3 | ||
| 4 | 40 | 无特殊限制 |