1057. Amount of Degrees Time limit: 1.0 second Memory limit: 64 MB Create a code to determine the amount of integers, lying in the set [ X; Y] and being a sum of exactly K different integer degrees of B. Example. Let X=15, Y=20, K=2, B=2. By this example 3 numbers are the sum of exactly two integer degrees of number 2: 17 = 2 4+2 0, 18 = 2 4+2 1, 20 = 2 4+2 2. Input The first line of input contains integers X and Y, separated with a space (1 ≤ X ≤ Y ≤ 2 31−1). The next two lines contain integers K and B (1 ≤ K ≤ 20; 2 ≤ B ≤ 10). Output Output should contain a single integer — the amount of integers, lying between X and Y, being a sum of exactly K different integer degrees of B. Sample
|
/*题意: 求一个区间的 degree进制的1的个数为k的数的个数思路:数位dp,一定要注意是1个个数为k dp[i][j][k] 代表到达了i位的j进制还差k个1详细注意的地方写在了代码中*/#include#include #include #include #include #include #include #include #include #include