给出 k 和 b,计算 [0, 2^b-1] 中所有 k 的倍数都转成二进制后共出现几个 1,答案对 10^9+9 取模。
输入
一行两个整数,k,b \ (1 \leq k \leq 1000, 1 \leq b \leq 128)。
输出
一个整数,表示答案。
样例
标准输入 复制文本 |
1 4 |
标准输出 复制文本 |
32 |
标准输入 复制文本 |
10 5 |
标准输出 复制文本 |
8 |
标准输入 复制文本 |
3 28 |
标准输出 复制文本 |
252698795 |
提示
样例二中,[0,31] 中 10 的倍数有 0,10,20,30,他们的二进制形式为 0,1010,10100,11110,一共 8 个 1。