题库练习 Entangled Substrings
← 上一题 下一题 →

A15952 | Entangled Substrings

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Quantum entanglement is when two particles link together in a certain way no matter how far apart they are in space.



You are given a string $s$ . A pair of its non-empty substrings $(a, b)$ is called entangled if there is a (possibly empty) link string $c$ such that:

- Every occurrence of $a$ in $s$ is immediately followed by $cb$ ;
- Every occurrence of $b$ in $s$ is immediately preceded by $ac$ .

In other words, $a$ and $b$ occur in $s$ only as substrings of $acb$ . Compute the total number of entangled pairs of substrings of $s$ .

A string $a$ is a substring of a string $b$ if $a$ can be obtained from $b$ by the deletion of several (possibly zero or all) characters from the beginning and several (possibly zero or all) characters from the end.

输入格式

The first and only line contains a string $s$ of lowercase English letters ( $1 \leq |s| \leq 10^5$ ) — the string for which you should count pairs of entangled substrings.

输出格式

Output a single integer, the number of entangled pairs of substrings of $s$ .

输入输出样例

输入 #1
abba
输出 #1
1
输入 #2
abacaba
输出 #2
0
输入 #3
abcabcabcabc
输出 #3
5
输入 #4
adamant
输出 #4
82
C++ 编辑器
输入
输出