【题目来源】:http://acm.hdu.edu.cn/showproblem.php?pid=6033
【题意】
问10^k不大于(2^m)-1的情况下,最大的k值是多少?
【思路】
这道题相对来说蛮简单的,主要就是log函数的使用,考虑将(2^m)-1化成10^x的形式,取整就可以了。log函数的使用。
【代码】
#include<cmath>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const double eps=1e-6;
int main()
{
int m,cases=1;
while(~scanf("%d",&m))
{
double k=(m*1.0)*log10(2.0);//主要式子。。
printf("Case #%d: %d\n",cases++,(int)k);
}
}