练习2————1008
2016-04-20 17:38
148 查看
题目:猜数字
题意:A有1数m,B来猜.B每猜一次,A就说;太大或太小,当数字正确是回答对了
问B猜n次可以猜到的最大数
思路:在最坏的情况下,在1到m间,最多只要猜log2(m)+1次(二分),所以有m=2^n-1.即猜n次,能猜到的最大数的数为2^n-1.
上面所说的也可以被理解为,在数1到2^n-1间,都可以在n次内猜出来。
感想:运用到二分法,
代码:
#include<cstdio>
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
int n,t,a;
cin>>t;
while(t--)
{
cin>>n;
a=pow(2.0,n)-1;
cout<<a<<endl;
}
return 0;
}
题意:A有1数m,B来猜.B每猜一次,A就说;太大或太小,当数字正确是回答对了
问B猜n次可以猜到的最大数
思路:在最坏的情况下,在1到m间,最多只要猜log2(m)+1次(二分),所以有m=2^n-1.即猜n次,能猜到的最大数的数为2^n-1.
上面所说的也可以被理解为,在数1到2^n-1间,都可以在n次内猜出来。
感想:运用到二分法,
代码:
#include<cstdio>
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
int n,t,a;
cin>>t;
while(t--)
{
cin>>n;
a=pow(2.0,n)-1;
cout<<a<<endl;
}
return 0;
}
相关文章推荐
- 单元测试&集成测试&系统测试&验收测试简图
- 第一次只出现一次的字符
- 方阵的逆矩阵的求法
- 编写Python爬虫抓取暴走漫画上gif图片的实例分享
- AYIT606第六周周六赛 (多重背包) E - Cash Machine 自动取款机
- JVM原理和优化
- 钩子函数与回调函数的区别
- Java中使用PrepateStatement并且like模糊查询
- Springmvc启动后执行操作
- Unity3D学习日记(五)实现围绕物品旋转的的摄像机控制
- Android sp<> 指针类的用法
- 学习资料 ,课程
- 二分答案——收入计划
- 百度图像搜索探秘
- 1、Reactive Extensions for .NET(译)
- ros gazebo 运行
- Java 加密 AES 对称加密算法
- MySQL innoDB引擎锁机制(一) —— 行锁和表锁
- 线性布局的初步认识
- php 结合缓冲区读取excel数据并批量导入mysql