Amount of Degrees
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

求给定区间[X,Y]中满足下列条件的整数个数:这个数恰好等于K个互不相等的B的整数次幂之和。例如,设X=15,Y=20,K=2,B=2,则有且仅有下列三个数满足题意:

输入描述:

第一行包含两个整数X和Y,接下来两行包含整数K和B。

输出描述:

只包含一个整数,表示满足条件的数的个数。
示例1

输入

复制
15 20
2
2

输出

复制
3

备注:

对于全部数据,