P23996 [AtCoder] Divisible Substring
提高-
题目描述

Problem Statement

Takahashi has a string S of length N consisting of digits from 0 through 9.
He loves the prime number P. He wants to know how many non-empty (contiguous) substrings of S - there are $N \times (N + 1) / 2$ of them - are divisible by P when regarded as integers written in base ten.
Here substrings starting with a 0 also count, and substrings originated from different positions in S are distinguished, even if they are equal as strings or integers.
Compute this count to help Takahashi.

Input

Input is given from Standard Input in the following format:
N P
S

Output

Print the number of non-empty (contiguous) substrings of S that are divisible by P when regarded as an integer written in base ten.

Constraints

  • $1 \leq N \leq 2 \times 10^5$
  • S consists of digits.
  • |S| = N
  • $2 \leq P \leq 10000$
  • P is a prime number.

Sample Input 1

4 3
3543

Sample Output 1

6

Here S = 3543. There are ten non-empty (contiguous) substrings of S:

  • 3: divisible by 3.

  • 35: not divisible by 3.

  • 354: divisible by 3.

  • 3543: divisible by 3.

  • 5: not divisible by 3.

  • 54: divisible by 3.

  • 543: divisible by 3.

  • 4: not divisible by 3.

  • 43: not divisible by 3.

  • 3: divisible by 3.

Six of these are divisible by 3, so print 6.

Sample Input 2

4 2
2020

Sample Output 2

10

Here S = 2020. There are ten non-empty (contiguous) substrings of S, all of which are divisible by 2, so print 10.
Note that substrings beginning with a 0 also count.

Sample Input 3

20 11
33883322005544116655

Sample Output 3

68

输入格式

见题面 Input 部分

输出格式

见题面 Output 部分

样例输入
4 3 3543
样例输出
6