资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
问题链接
对于一个字符串 ,我们定义 的分值 为 中恰好出现一次的字符个数。例如 “aba”,“abc”, “aaa”。
现在给定一个字符串 (长度为 ),请你计算对于所有 的非空子串 ,的和是多少。
输入格式
输入一行包含一个由小写字母组成的字符串 。
输出格式
输出一个整数表示答案。
样例输入
ababc
Data
样例输出
21
Data
样例说明
子串 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
None
评测用例规模与约定
运行超时(50)
//暴力枚举—三重循环,需要n<100,所以不合适。
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
char s[1000005];
//计算字串的f
int Fun(int l,int r)
{
int word[27]={
0};
char x;
int y;
int cnt=0;
int len=r-l+1;
for(int i=l;i<=r;i++)
{
x=s[