PivotOJ

Digit Division

시간 제한: 1000ms메모리 제한: 512MB출처: CERC 2015BOJ 11616

문제

We are given a sequence of n decimal digits. The sequence needs to be partitioned into one or more contiguous subsequences such that each subsequence, when interpreted as a decimal number, is divisible by a given integer m.

Find the number of different such partitions modulo 109 + 7. When determining if two partitions are different, we only consider the locations of subsequence boundaries rather than the digits themselves, e.g. partitions 2|22 and 22|2 are considered different.

입력

The first line contains two integers n and m (1 ≤ n ≤ 300 000, 1 ≤ m ≤ 1 000 000) – the length of the sequence and the divisor respectively. The second line contains a string consisting of exactly n digits.

출력

Output a single integer – the number of different partitions modulo 109 + 7.

예제

예제 1

입력
4 2
1246
출력
4

예제 2

입력
4 7
2015
출력
0
코드를 제출하려면 로그인하세요.