#ABC215E. 连续参赛

连续参赛

连续参赛

题目描述

异世界的 AtCoder 举办 10 种类型的比赛,称为 AAC、……、AJC。今后将举办 NN 场比赛。

NN 场比赛的类型以字符串 SS 给出:如果 SS 的第 ii 个字符是 xx,那么第 ii 场比赛是 AxxC。

AtCoDeer 将从这 NN 场比赛中选出 1 场以上参赛,使得以下条件成立:

在他参加的比赛序列中,同类型的比赛连续出现。

形式化地说,设 AtCoDeer 参加 xx 场比赛,其中第 ii 场的类型为 TiT_i,则对于满足 1i<j<kx1 \le i \lt j \lt k \le x 的所有三元组 (i,j,k)(i,j,k),若 Ti=TkT_i=T_k,则必须满足 Ti=TjT_i=T_j

求 AtCoDeer 选择参赛比赛的方式数,对 998244353998244353 取模。

两种选择方式视为不同,当且仅当存在一场比赛 cc,使得一种方式中参加 cc 而另一种方式中不参加。

输入格式

输入按以下格式从标准输入给出:

NN
SS

输出格式

以整数形式输出答案。

样例

4
BGBH
13

例如,参加第 1 场和第 3 场比赛是合法的,参加第 2 场和第 4 场也是合法的。

另一方面,参加第 1、2、3、4 场比赛不合法,因为参加的两场 ABC 比赛不连续,违反了三元组 (i,j,k)=(1,2,3)(i,j,k)=(1,2,3) 的条件。

另外,不允许一场比赛都不参加。

总共有 13 种合法的参赛方式。

100
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBIEIJEIJIJCGCCFGIEBIHFCGFBFAEJIEJAJJHHEBBBJJJGJJJCCCBAAADCEHIIFEHHBGF
330219020

注意要对 998244353998244353 取模。

数据范围

  • 1N10001 \le N \le 1000
  • S=N|S|=N
  • SS 由英文大写字母 A 到 J 组成。
难度 提高
通过率
尝试 0
已通过 0
ID
2228
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签