您的位置:首页 > 其它

练习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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: