loj#P2053. 「HNOI2016」大数
「HNOI2016」大数
题目描述
小 B 有一个很大的数 ,长度达到了 位;这个数可以看成是一个串,它可能有前导 ,例如 00009312345
。小 B 还有一个素数 。
现在,小 B 提出了 个询问,每个询问求 的一个子串中有多少子串是 的倍数( 也是 的倍数)。例如 为 0077
时,其子串 007
有六个子串:0
, 0
, 7
, 00
, 07
, 007
;显然 0077
的子串 077
的六个子串都是素数 的倍数。
输入格式
第一行一个整数:。
第二行一个串:。
第三行一个整数:。
接下来 行,每行两个整数 ,表示对 的子串 的一次询问。
注意: 的最左端的数字的位置序号为 ;例如 为 ,则 为 ,为 。
输出格式
输出 行,每行一个整数,第 行是第 个询问的答案。
11
121121
3
1 6
1 5
1 4
5
3
2
数据范围与提示
对于所有的数据,, 为素数。