QOJ.ac

QOJ

Limite de temps : 1 s Limite de mémoire : 128 MB Points totaux : 100

#6297. 大数

Statistiques

小 B 有一个很大的数 $S$,长度达到了 $N$ 位;这个数可以看成是一个串,它可能有前导 $0$,例如 $00009312345$。小 B 还有一个素数 $P$。

现在,小 B 提出了 $M$ 个询问,每个询问求 $S$ 的一个子串中有多少子串是 $P$ 的倍数($0$ 也是 $P$ 的倍数)。例如 $S$ 为 $0077$ 时,其子串 $007$ 有 $6$ 个子串:$0, 0, 7, 00, 07, 007$;显然 $0077$ 的子串 $007$ 有 $6$ 个子串都是素数 $7$ 的倍数。

输入格式

第一行一个整数:$P$。 第二行一个字符串:$S$。 第三行一个整数:$M$。 接下来 $M$ 行,每行两个整数 $fr, to$,表示对 $S$ 的子串 $S[fr \dots to]$ 的一次询问。注意:$S$ 的最左端的数字的位置为 $1$;例如 $S$ 为 $213567$,则 $S[1]$ 为 $2$,$S[1 \dots 3]$ 为 $213$。

输出格式

输出 $M$ 行,每行一个整数,第 $i$ 行是第 $i$ 个询问的答案。

数据范围

对于 $30\%$ 的数据,$N, M \le 1000$; 对于 $60\%$ 的数据,$N \le 10000, M \le 1000$; 对于 $100\%$ 的数据,$N, M \le 100000$,$P$ 为素数。

样例

输入 1

11
121121
3
1 6
1 5
1 4

输出 1

5
3
2

说明

第一个询问问的是整个串,满足条件的子串分别有:$121121, 2112, 11, 121, 121$。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.