前进
2016-07-21 20:33
295 查看
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit Status
Description
通过墓碑,进入古墓后,才发现里面别有洞天。
突然,ACMer发现自己周围是黑压压的一群蝙蝠,正准备一起向他发起进攻!形势十分危急!
好在此时的ACMer已经不是以前那个经常被lemon抢走MM的菜鸟了!面对众多蝙蝠的嗜血狂攻,只见ACMer使出轻灵的剑法,刷,刷,刷,瞬间搞定……
现已知ACMer使用了2招(剑招A和剑招B):剑招A,一招能杀死一半的蝙蝠。但是如果当前的蝙蝠数为奇数,那么就必须先出一招剑招B杀死其中任意一个,使蝙蝠数为偶数,再出剑招A。
现在请问:杀死n只蝙蝠需要使出多少招剑招B?
Input
输入数据首先给出一个整数C,表示测试组数。
然后是C组数据,每组包含一个正整数n (n<2^31)。
Output
对应每组数据,请输出一个整数,表示yifenfei使用的剑招B的数目,每组输出占一行。
Sample Input
2
1
5
Sample Output
1
2
View Code
Submit Status
Description
通过墓碑,进入古墓后,才发现里面别有洞天。
突然,ACMer发现自己周围是黑压压的一群蝙蝠,正准备一起向他发起进攻!形势十分危急!
好在此时的ACMer已经不是以前那个经常被lemon抢走MM的菜鸟了!面对众多蝙蝠的嗜血狂攻,只见ACMer使出轻灵的剑法,刷,刷,刷,瞬间搞定……
现已知ACMer使用了2招(剑招A和剑招B):剑招A,一招能杀死一半的蝙蝠。但是如果当前的蝙蝠数为奇数,那么就必须先出一招剑招B杀死其中任意一个,使蝙蝠数为偶数,再出剑招A。
现在请问:杀死n只蝙蝠需要使出多少招剑招B?
Input
输入数据首先给出一个整数C,表示测试组数。
然后是C组数据,每组包含一个正整数n (n<2^31)。
Output
对应每组数据,请输出一个整数,表示yifenfei使用的剑招B的数目,每组输出占一行。
Sample Input
2
1
5
Sample Output
1
2
#include<iostream> #include<stdio.h> using namespace std; int main(){ int c; scanf("%d",&c); while(c--){ int n; scanf("%d",&n); int ans=0; while(n!=0){ if(n%2==0) n=n/2; else { n--; ans++; } } printf("%d\n",ans); } }
View Code
相关文章推荐
- Android 如何编写基于编译时注解的项目
- Linux下使用addr2line调试程序的方法
- Linux入门(一)-目录和文件系统
- 遇到:无法解析类型 java.lang.CharSequence怎么办?
- 2016年团体程序设计天梯赛-决赛 L2-014. 列车调度 【导弹拦截系统-最长上升子序列nlogn求法】
- 【CodeForces】615A - Bulbs(水)
- listview的优化---viewHolder的封装
- 前端开发必备插件
- Android拍照和获取相册图片
- 暑假集训--训练1 二分搜索
- HDU 1253
- LU分解的实现
- SpringMVC + mybatis结合
- Android 6.0 MT流程
- Quoit Design
- Codeforces 84A Toy Army
- hdu 5723 Abandoned country(2016 Multi-University Training Contest 1——最小生成树+深搜)
- 将Jar安装到本地仓库和Jar上传到私服
- Linux运维学习笔记
- 积性函数求前缀和