博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法训练 二进制数数( 给定L,R。统计[L,R]区间内的所有数在二进制下包含的“1”的个数之和。   如5的二进制为101,包含2个“1”。)
阅读量:3961 次
发布时间:2019-05-24

本文共 524 字,大约阅读时间需要 1 分钟。

算法训练 二进制数数

问题描述

给定L,R。统计[L,R]区间内的所有数在二进制下包含的“1”的个数之和。

  如5的二进制为101,包含2个“1”。
输入格式
  第一行包含2个数L,R
输出格式
  一个数S,表示[L,R]区间内的所有数在二进制下包含的“1”的个数之和。
样例输入
2 3
样例输出
3
数据规模和约定
  L<=R<=100000;

思路

简单题,我的想法是用一个函数将一个十进制数转换成二进制数,再用一个函数判断这个二进制数中有多少个1,定义全局变量进行累加。

代码呈上:

#include 
int sum=0;int len;void fun(int a[1000],int len){
int i=0; for(i=0;i
0) {
a[i]=n%2; n/=2; i++; } fun(a,i);}int main(){
int L,R; scanf("%d %d",&L,&R); int i; for(i=L;i<=R;i++) {
change(i); } printf("%d",sum); return 0;}

运行示例

在这里插入图片描述

转载地址:http://kirzi.baihongyu.com/

你可能感兴趣的文章
eclipse+ADT 进行android应用签名详解
查看>>
Robotium只有apk文件例如Music.apk
查看>>
UI自动化测试框架对比(二)
查看>>
Selenium-webdriver系列教程(9)——如何操作select下拉框
查看>>
Selenium-webdriver系列教程(10)——如何智能的等待页面加载完成
查看>>
Robotium测试NotePad(一)
查看>>
Robotium测试NotePad(二) //测试添加文本
查看>>
Robotium测试NotePad(二) //测试删除文本
查看>>
Robotium只有apk文件时进行测试
查看>>
Robotium测试NotePad(三) //测试修改文本
查看>>
怎样有效降低测试的轮次?
查看>>
功能测试用例设计策略
查看>>
真正优秀的质量工程师,都有这些特质
查看>>
JIRA与confluence的用户整合
查看>>
Robotium测试——API介绍
查看>>
autoit3——打开窗口
查看>>
autoit3 ie.au3 函数之——ControlClick
查看>>
autoit3 ie.au3 函数之——_FileWriteLog日志
查看>>
转:Android自动化压力测试工具Monkey——测试例子
查看>>
Robotium测试之——获取当前屏幕的大小
查看>>