luogu#B3967. [语言月赛 202404] 非众数

[语言月赛 202404] 非众数

题目描述

给定一个长度为 nn 的字符串 ss,保证 ss 仅包含小写字母,求 ss 的非空子串中非众数串的个数。

定义:非空子串

sis_i 表示 ss 中的第 ii 个字符(1in1 \leq i \leq n)。任取两个整数 i,ji, j1ijn1 \leq i \leq j \leq n),将 si,si+1,,sjs_i, s_{i + 1}, \cdots, s_{j} 截取出来按原序排列作为一个新的字符串,则这个字符串叫做 ss 的非空子串。
例如,当 s=abcdes = \texttt{abcde} 时,$\texttt{ab}, \texttt{bcde}, \texttt{c}, \texttt{abcde}$ 都是 ss 的非空子串,而 $\texttt{acd}, \texttt{f}, \texttt{ngioasd}, \texttt{" "}$ 都不是 ss 的非空子串。

定义:非众数串

若字符串 aa 中出现次数最多的字符出现的次数不超过 a2\lfloor \frac{|a|}{2} \rfloor,则称字符串 aa 为一个非众数串。其中 x\lfloor x \rfloor 代表 x\leq x 的最大整数,a|a| 代表 aa 的长度。

输入格式

一行一个字符串,表示 ss

输出格式

一行一个整数,表示答案。

aabb
2
fqmdfnc

21

提示

样例 1 解释

其中 ab,aabb\texttt{ab,aabb}非众数非空子串。

数据范围

对于 100%100\% 的数据,1n5001 \le n \le 500,字符串由小写字母组成。

测试点编号 nn 特殊性质
11 =2= 2
2,32, 3 10\leq 10
44 500\leq 500 所有字符相同
55 =26= 26 所有字符不同
6,76, 7 500\leq 500 字符串内仅可能包含 a,b\texttt{a,b} 两种字母
8108 \sim 10