200773: [AtCoder]ARC077 F - SS

Memory Limit:256 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Score : $1100$ points

Problem Statement

We will call a string that can be obtained by concatenating two equal strings an even string. For example, xyzxyz and aaaaaa are even, while ababab and xyzxy are not.

For a non-empty string $S$, we will define $f(S)$ as the shortest even string that can be obtained by appending one or more characters to the end of $S$. For example, $f($abaaba$)=$abaababaab. It can be shown that $f(S)$ is uniquely determined for a non-empty string $S$.

You are given an even string $S$ consisting of lowercase English letters. For each letter in the lowercase English alphabet, find the number of its occurrences from the $l$-th character through the $r$-th character of $f^{10^{100}} (S)$.

Here, $f^{10^{100}} (S)$ is the string $f(f(f( ... f(S) ... )))$ obtained by applying $f$ to $S$ $10^{100}$ times.

Constraints

  • $2 \leq |S| \leq 2\times 10^5$
  • $1 \leq l \leq r \leq 10^{18}$
  • $S$ is an even string consisting of lowercase English letters.
  • $l$ and $r$ are integers.

Input

Input is given from Standard Input in the following format:

$S$
$l$ $r$

Output

Print $26$ integers in a line with spaces in between. The $i$-th integer should be the number of the occurrences of the $i$-th letter in the lowercase English alphabet from the $l$-th character through the $r$-th character of $f^{10^{100}} (S)$.


Sample Input 1

abaaba
6 10

Sample Output 1

3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Since $f($abaaba$)=$abaababaab, the first ten characters in $f^{10^{100}}(S)$ is also abaababaab. Thus, the sixth through the tenth characters are abaab. In this string, a appears three times, b appears twice and no other letters appear, and thus the output should be $3$ and $2$ followed by twenty-four $0$s.


Sample Input 2

xx
1 1000000000000000000

Sample Output 2

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1000000000000000000 0 0

Sample Input 3

vgxgpuamkvgxgvgxgpuamkvgxg
1 1000000000000000000

Sample Output 3

87167725689669676 0 0 0 0 0 282080685775825810 0 0 0 87167725689669676 0 87167725689669676 0 0 87167725689669676 0 0 0 0 87167725689669676 141040342887912905 0 141040342887912905 0 0

Input

题意翻译

## Description 如果某个串可以由两个一样的串前后连接得到,我们就称之为“偶串”。比如说“xyzxyz”和“aaaaaa”是偶串,而“ababab”和“xyzxy”则不是偶串。 对于一个非空串S,我们定义f(S)是在S后面添加一些字符得到的最短偶串。比如f('abaaba')='abaababaab'。容易证明,对于一个非空串S,f(S)是唯一的 现在给定一个由小写英文字母构成的偶串S,你需要求出 $f^{10^{100}}(S)$ ,并统计计算结果的第l个字符到第r个字符中,每个字母出现了多少次 其中, $f^{10^{100}}$ 是指 $f(f(f(...f(S)...)))$ ,式子中共有 $10^{100}$ 个 $f$ ## Input 第一行输入串S 第二行两个数l,r ## Output 对于每个字母,输出一个数字表示答案,两个数字之间应有一个空格

加入题单

上一题 下一题 算法标签: