CF1098F.Ж-function
NOI/NOI+/CTSC
通过率:0%
时间限制:6.00s
内存限制:512MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
The length of the longest common prefix of two strings s=s1s2…sn and t=t1t2…tm is defined as the maximum k≤min(n,m) such that s1s2…sk equals t1t2…tk. Let's denote the longest common prefix of two strings s and t as lcp(s,t).
Z-function of a string s1s2…sn is a sequence of integers z1,z2,…,zn, where zi=lcp(s1s2…sn, sisi+1…sn). Ж-function of a string s is defined as z1+z2+…+zn.
You're given a string s=s1s2…sn and q queries. Each query is described by two integers li and ri, where 1≤li≤ri≤n. The answer for the query is defined as Ж-function of the string slisli+1…sri.
两个字符串 s=s1s2…sn 与 t=t1t2…tm 的最长公共前缀长度定义为最大的整数 k≤min(n,m),使得 s1s2…sk=t1t2…tk。我们记字符串 s 与 t 的最长公共前缀为 lcp(s,t)。
字符串 s1s2…sn 的 Z-函数 是一个整数序列 z1,z2,…,zn,其中 zi=lcp(s1s2…sn, sisi+1…sn)。字符串 s 的 Ж-函数 定义为 z1+z2+…+zn。
给定一个字符串 s=s1s2…sn 和 q 个查询。每个查询由两个整数 li 和 ri 描述,满足 1≤li≤ri≤n。该查询的答案定义为子串 slisli+1…sri 的 Ж-函数值。
输入格式
The first line contains the string s, consisting of lowercase English letters (1≤∣s∣≤200000). The second line contains one integer q — the number of queries (1≤q≤200000). Each of the following q lines contains two integers li and ri, describing the query (1≤li≤ri≤∣s∣).
第一行包含字符串 s,由小写英文字母组成(1≤∣s∣≤200000)。第二行包含一个整数 q —— 查询次数(1≤q≤200000)。接下来的 q 行中,每行包含两个整数 li 和 ri,描述一次查询(1≤li≤ri≤∣s∣)。
输出格式
For every query output one integer: the value of Ж-function of the corresponding substring.
对于每个查询,输出一个整数:对应子串的 Ж 函数值。
输入输出样例
输入#1
abbd 4 2 3 1 3 3 3 1 4
输出#1
3 3 1 4
输入#2
bbaaa 5 2 4 1 5 1 5 3 3 1 2
输出#2
3 6 6 1 3
说明/提示
In the first sample case there are four queries:
- the first query corresponds to the substring bb, and its Ж-function equals 2+1=3;
- the second query corresponds to the substring abb, and its Ж-function equals 3+0+0=3;
- the third query corresponds to the substring b, and its Ж-function equals 1.
- the fourth query corresponds to the substring abdd, and its Ж-function equals 4+0+0+0=4.
在第一个样例中,共有四个查询:
- 第一个查询对应子串
bb,其 Ж-函数值为 2+1=3; - 第二个查询对应子串
abb,其 Ж-函数值为 3+0+0=3; - 第三个查询对应子串
b,其 Ж-函数值为 1; - 第四个查询对应子串
abdd,其 Ж-函数值为 4+0+0+0=4。
输入解题思路,AI测评打分。不知道怎么写?