#4474. CSP-NOIP Round 1 B

CSP-NOIP Round 1 B

题目描述

现在,你有一个长度为 nn 巨大无比的数 A。为了方便描述它,我们在这里将它的数字从左往右标号为 1,2,3,,n1,2,3,\cdots,n,第 ii 个数字为 aia_i ,即 A=a1a2a3anA = \overline{a_1 a_2 a_3 \cdots a_n}。其中 a1a2a3an \overline{a_1 a_2 a_3 \cdots a_n} 表示一个数字等于 $a_1 \times 10^{n - 1} + a_2 \times 10^{n - 2} + a_3 \times 10^{n - 3} + \cdots + a_n \times 10^0$。

定义 $f(i, j) = \overline{a_i a_{i + 1} a_{i+2} \cdots a_j}$。

现在需要你数清,有多少对 (i,j)(i,j) (iji \le j) 满足 2k2^k 整除 f(i,j)f(i, j)f(i,j)f(i,j) 没有多余的前导00

对于数字 010010 有多余的前导 00,但是对于数字 00 没有。

输入格式

第一行输入两个数字 n,kn, k,意义如题目描述。

第二行输入一个长度为 nn 的字符串,这个字符串由 0099 的数字组成。

输出格式

输出一行一个数字,为题目中所求。

样例输入

5 2
52012
7

样例解释

77 个符合条件的 f(i,j)f(i,j) 分别为: f(1,2),f(1,3),f(1,5),f(2,3),f(2,5),f(3,3),f(4,5)f(1,2),f(1,3),f(1,5),f(2,3),f(2,5),f(3,3),f(4,5)

数据范围

对于 30%30\% 的数据,n18n \le 18

对于 60%60\% 的数据,n1000n \le 1000

对于另外 20%20\% 的数据,k=0k = 0

对于 100%100\% 的数据,1n1061 \le n \le 10^60k180 \le k \le 18