数字匹配
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

最近比较喜欢二进制数,她认为对于任意两个正整数,当且仅当的二进制非前导零部分最大连续重合位数时,是匹配的,比如的二进制形式为,的二进制形式为,因此最大连续重合部分为,故这两个数的最大连续重合位数为
现在给定一个正整数和一个,求对于所有,满足条件的匹配数

输入描述:

读入共一行,包括两个正整数n,k(n≤2000,k≤10)

输出描述:

输出共一行,表示匹配数
示例1

输入

复制
6 2

输出

复制
7

说明

2(10)和4(100)
2(10)和5(101)
2(10)和6(110)
3(11)和6(110)
4(100)和5(101)
4(100)和6(110)
5(101)和6(110)
共7对