#SZSY1014. 图游走
图游走
题目描述
有 个节点,编号为 。每个节点为黑色或白色,其中节点 为黑色,节点 为白色。
任意两个不同节点之间都有两个方向的有向边。从节点 到节点 的边颜色按下表确定:
| 编号关系 | 两个节点同色 | 两个节点异色 |
|---|---|---|
| 红色 | 蓝色 | |
| 蓝色 | 红色 |
从节点 开始行走,最初喜欢蓝色。每一步只能沿一条与当前喜欢的颜色相同的有向边行走。每当到达节点 ,喜欢的颜色变为蓝色;每当到达节点 ,喜欢的颜色变为红色;到达其他节点时,喜欢的颜色不变。
求满足下列要求的有限行走序列数量:
- 起点为节点 ,终点为节点 。
- 每个编号大于等于 的节点至多出现一次,节点 可以出现多次。
- 不能立即沿原路返回:若行走序列为 ,则对所有 ,都有 。
到达节点 时,可以结束行走,也可以继续行走并在之后再次到达节点 时结束。节点编号序列不同的行走视为不同方案。输出方案数对 取模的结果。
输入格式
第一行包含一个整数 。
第二行包含一个长度为 的字符串 。若 为 B,表示节点 为黑色;若为 W,表示节点 为白色。
输出格式
输出一个整数,表示合法行走序列数量对 取模的结果。
数据范围
对于所有测试数据,, 仅含字符 B 和 W,且 B、 W。
子任务
| 编号 | 分值 | 缩减范围 | 附加限制 |
|---|---|---|---|
| 1 | 4 | — | |
| 2 | 12 | ||
| 3 | 16 | — | 恰好有一个黑色节点。 |
| 4 | 存在 ,使得节点 均为白色,其余节点均为黑色。 | ||
| 5 | 24 | 黑色节点不超过 个。 | |
| 6 | 28 | — |
样例 1
4
BWWB
4
样例 1 说明
四种合法行走为 、、 和 。
最后一种行走在首次到达节点 后继续行走,仍然是一个独立的合法方案。
样例 2
12
BWBWBBBWWBBW
3377552