所以我刚刚参加了ACM计划比赛并且做得很好但是有一个问题不是一支球队得到的.
问题.
以整数N0开始,该整数大于0.令N1为N0的二进制表示中的1的个数.所以,如果
N0 = 27,N1 = 4.首先i > 0,让Ni为二进制表示中的1的个数Ni-1.该序列将始终收敛于一.对于任何起始编号N0,令K为i> = 0的最小值,其中N1 = 1.例如,如果N0 = 31,则N1 = 5,N2 = 2,N3 = 1,因此K = 3.给定一系列连续数字和X值,该范围内有多少个数字的K值等于X?
输入输入
中将有几个测试用例.每个测试用例将由一行中的三个整数组成:LO HI X
其中LO和HI(1 <=LO<=HI<= 10 ^ 18)是整数范围的下限和上限,X(0 <=X<= 10)是K的目标值.输入将以三个0的行结束.输出
对于每个测试用例,输出一个整数,表示在输入中K值等于X 的范围内从(包括)LO到整数的整数HI.在没有空格的情况下在每条线上打印每个Integer.不要在答案之间打印任何空白行.
31 31 3
31 31 1
27 31 1
27 31 2
1023 1025 …Run Code Online (Sandbox Code Playgroud)