时间限制:1000 ms
内存限制:256 MiB
标准输入输出
题目类型:传统
评测方式:文本比较
小明定义了一个函数 F:输入的正整数 的二进制表达中 出现的次数。例如,F(13)=3,因为(13)10 = (1101)2。然后,小明发现,F(x) 总是小于等于
,而且任意正整数 经过若干次函数 的变换后,总会成为 。如果一个正整数 恰好经过 次函数 的变换后成为 ,则小明称之为
变换数。小明想知道有多少个不大于 的 变换数,你可以帮帮他吗?
第一行表示整数 ,是一个没有前导零的二进制表示。
第二行包含整数 。
输出一个正整数。因为不大于 的 变换数的数量可能很大,请把结果模 后输出。