DescriptionDescriptionDescription
某一个数的二进制中有三个连续相同的数为好数
例如
8的二进制为1000
有三个连续的0
7的二进制为111
有三个连续的1
给定n与m
求在n与m之间的好数个数
InputInputInput
一行,n与m
OutputOutputOutput
一行,这样的数的个数
SampleInputSample InputSampleInput#1
0 16
SampleInputSample InputSampleInput#2
17 100
SampleInputSample InputSampleInput#3
2000000000 2100000000
SampleInputSample InputSampleInput#4
2 5
SampleOutputSample OutputSampleOutput#1
5
SampleOutputSample OutputSampleOutput#2
49
SampleOutputSample OutputSampleOutput#3
100000001
SampleOutputSample OutputSampleOutput#4
0
思路
数位DP
题目中求好数
但我们也可以求坏数
我们设F[i][0][0]F[i][0][0]F[i][0][0]
为第iii位(从右往左)为0
与第i−1i-1i−1位(从右往左)为0
的二进制的坏数的个数
二进制: