CF245H.Queries for Number of Palindromes

传统题 时间 5000 ms 内存 256 MiB 10 尝试 1 已通过 1 标签

Queries for Number of Palindromes

CF245H · Queries for Number of Palindromes

中文题意

给定一个长度为 s|s| 的字符串 s=s1s2sss = s_1 s_2 \dots s_{|s|},仅由小写英文字母组成。另有 qq 个询问,每个询问由两个整数 li,ril_i, r_i1liris1 \le l_i \le r_i \le |s|)描述。询问的答案为子串 s[liri]s[l_i \dots r_i] 中回文子串的个数。

字符串 s[lr]=slsl+1srs[l \dots r] = s_l s_{l+1} \dots s_r1lrs1 \le l \le r \le |s|)是 s=s1s2sss = s_1 s_2 \dots s_{|s|} 的一个子串。

若字符串 tt 从左往右读和从右往左读相同,则称其为回文串。形式化地,若 $t = t_1 t_2 \dots t_{|t|} = t_{|t|} t_{|t|-1} \dots t_1$。

输入格式(中文)

第一行一个字符串 ss1s50001 \le |s| \le 5000)。第二行一个整数 qq1q1061 \le q \le 10^6),表示询问个数。接下来 qq 行为各询问,第 ii 行两个用空格分隔的整数 li,ril_i, r_i1liris1 \le l_i \le r_i \le |s|),描述第 ii 个询问。

保证给定字符串仅由小写英文字母组成。

输出格式(中文)

输出 qq 个整数——各询问的答案,按输入中询问给出的顺序输出,数字之间用空白分隔。

样例

样例 1

输入:

caaaba
5
1 1
1 4
2 3
4 6
4 5

输出:

1
7
3
4
2

在线编程 IDE

建议全屏模式获得最佳体验