#aBC215E. [ABC215E] Chain Contestant
[ABC215E] Chain Contestant
AT_abc215_e [ABC215E] Chain Contestant
题目描述
在另一个世界的 AtCoder 中,目前正在举办 AAC, ..., AJC 共 种类型的比赛,接下来还将举办 场比赛。
每场比赛的类型以字符串 给出, 的第 个字符为 时,表示第 场比赛为 AC。
鹿 AtCoDeer 君将从 场比赛中选择至少一场参加,并且选择的比赛需要满足以下条件:
- 选中的比赛按原顺序抽取后,各种类型的比赛必须是连续的一段。
- 更严格地说,假设 AtCoDeer 君参加了 场比赛,且第 场比赛的类型为 ,那么对于所有满足 的整数三元组 ,如果 ,则必须有 。
请你求出 AtCoDeer 君可以选择参赛的方案数对 取模的结果。
注意,如果存在某场比赛 ,在一种选择中参加了而在另一种选择中没有,则这两种选择视为不同。
输入格式
输入以以下格式从标准输入读入。
输出格式
请输出一个整数作为答案。
输入输出样例 #1
输入 #1
4
BGBH
输出 #1
13
输入输出样例 #2
输入 #2
100
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBIEIJEIJIJCGCCFGIEBIHFCGFBFAEJIEJAJJHHEBBBJJJGJJJCCCBAAADCEHIIFEHHBGF
输出 #2
330219020
说明/提示
限制
- 只包含大写英文字母
A到J
样例解释 1
例如,选择第 场比赛,或选择第 场比赛,都是满足条件的方案。
而选择第 场比赛时,ABC 类型的比赛没有连成一段,对于三元组 不满足条件。
另外,全部不参加比赛也是不允许的。
满足题意的参赛方案共有 种。
样例解释 2
注意,答案需要对 取模。
由 ChatGPT 4.1 翻译