每日刷题(五十九)
ALGO-202、二进制数数
这个题很简单,就是从个位开始不断取2的余数看是否为1,为1则++,否则不处理
详细C代码如下:
#include<stdio.h>
int main()
{
int L, R;
scanf("%d %d", &L, &R);
int i;
long long sum = 0;
int u, v;
for(i = L; i <= R; i++)
{
v = i;
u = v;
while(v)
{
u %= 2;
v /= 2;
if(u == 1)
sum++;
u = v;
}
}
printf("%lld\n", sum);
return 0;
}
样例运行结果如下: