A7096.消消乐
省选/NOI-
CSP-S
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
小 L 现在在玩一个低配版本的消消乐,该版本的游戏是一维的,一次也只能消除两
个相邻的元素。
现在,他有一个长度为 n 且仅由小写字母构成的字符串。我们称一个字符串是可消除的,当且仅当可以对这个字符串进行若干次操作,使之成为一个空字符串。
其中每次操作可以从字符串中删除两个相邻的相同字符,操作后剩余字符串会拼接在一起。
小 L 想知道,这个字符串的所有非空连续子串中,有多少个是可消除的。
输入格式
输入的第一行包含一个正整数 n,表示字符串的长度。
输入的第二行包含一个长度为 n 且仅由小写字母构成的的字符串,表示题目中询问的字符串。
输出格式
输出一行包含一个整数,表示题目询问的答案。
输入输出样例
输入#1
8 accabccb
输出#1
5
说明/提示
【样例 1 解释】
一共有 5 个可消除的连续子串,分别是 cc
、acca
、cc
、bccb
、accabccb
。
【数据范围】
对于所有测试数据有:1≤n≤2×106,且询问的字符串仅由小写字母构成。
测试点 | n≤ | 特殊性质 |
---|---|---|
1∼5 | 10 | 无 |
6∼7 | 800 | 无 |
8∼10 | 8000 | 无 |
11∼12 | 2×105 | A |
13∼14 | 2×105 | B |
15∼17 | 2×105 | 无 |
18∼20 | 2×106 | 无 |
特殊性质 A:字符串中的每个字符独立等概率地从字符集中选择。
特殊性质 B:字符串仅由 a
和 b
构成。
输入文件名:game.in
输出文件名字:game.out