Preparando MOJI

Delicious Dessert

3000ms 524288K

Description:

Today is an important day for chef Tonio — an auditor has arrived in his hometown of Morioh. He has also arrived at Tonio's restaurant and ordered dessert. Tonio has not been prepared for this turn of events.

As you know, dessert is a string of lowercase English letters. Tonio remembered the rule of desserts — a string $$$s$$$ of length $$$n$$$. Any dessert $$$t$$$ is delicious if the number of occurrences of $$$t$$$ in $$$s$$$ as a substring is divisible by the length of $$$t$$$.

Now Tonio wants to know the number of delicious substrings of $$$s$$$. If the substring occurs several times in the string $$$s$$$, then all occurrences must be taken into account.

Input:

The first line contains an integer $$$n$$$ ($$$1 \leq n \leq 10^6$$$) — the length of the rule $$$s$$$.

The second line contains the string $$$s$$$ of length $$$n$$$ — the rule. The rule consists only of lowercase English letters.

Output:

In a single line print the number of delicious substrings of $$$s$$$.

Sample Input:

7
abacaba

Sample Output:

11

Sample Input:

8
abaababa

Sample Output:

11

Sample Input:

10
deadinside

Sample Output:

12

Sample Input:

5
aaaaa

Sample Output:

12

Note:

In the first sample, there are many delicious substrings. $$$7$$$ of them are substrings of length $$$1$$$ (because any number is divisible by $$$1$$$). Consider other delicious substrings:

  • "ab" occurs in $$$s$$$ $$$2$$$ times, which is divisible by the length of the substring.
  • "ba" also occurs $$$2$$$ times.

Therefore, the answer is $$$7 + 2 + 2 = 11$$$.

Note that the answer includes both occurrences of "ab" and "ba".

Informação

Codeforces

Provedor Codeforces

Código CF1780G

Tags

binary searchdsuhashingmathnumber theorystring suffix structures

Submetido 0

BOUA! 0

Taxa de BOUA's 0%

Datas 09/05/2023 10:36:06

Relacionados

Nada ainda