传统题 1000ms 256MiB

子串分值

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

对于一个字符串 SS,我们定义 SS 的分值 f(S)f(S)SS 中恰好出现一次的字符个数。例如 f(aba)=1f(abc)=3f(aaa)=0f(aba)=1,f(abc)=3,f(aaa)=0

现在给定一个字符串 S0n1S_{0⋯n−1}(长度为 n1n105n,1≤n≤10^5),请你计算对于所有 SS 的非空子串 Sij(0ij<n)f(Sij)S_{i⋯j}(0≤i≤j<n),f(S_{i⋯j}) 的和是多少。

输入描述

输入一行包含一个由小写字母组成的字符串 SS

输出描述

输出一个整数表示答案。

ababc
21

样例说明

子串  f值
a      1
ab     2
aba    1
abab   0
ababc  1
b      1
ba     2
bab    1
babc   2
a      1
ab     2
abc    3
b      1
bc     2
c      1

评测用例规模与约定:

对于 20% 的评测用例,1n101 \leq n \leq 10

对于 40% 的评测用例,1n1001 \leq n \leq 100

对于 50% 的评测用例,1n10001 \leq n \leq 1000

对于 60% 的评测用例,1n100001 \leq n \leq 10000

对于所有评测用例,1n1000001 \leq n \leq 100000

专题训练Ⅲ

未参加
状态
已结束
规则
乐多
题目
10
开始于
2025-3-21 13:00
结束于
2025-3-21 17:00
持续时间
4 小时
主持人
参赛人数
18