题目链接:​​Add More Zero​

题目大意:给你一个m,现在你可以表示1到2m−1里面的数,能表达到1到10k,问这个k最大是多少

题目思路:实际上就是求2m−1有多少位,也就是问⌊lg(2m−1)⌋是多少,因为不存在2m−1比2m少一位的情况,所以直接求lg(2m)就好了,也就是m∗lg(2),所以这就是答案

#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <algorithm>
#include <iostream>

using namespace std;

int main(){
int m,t = 0;
while(~scanf("%d",&m)){
printf("Case #%d: ",++t);
int ans = m*log10(2.0);
printf("%d\n",ans);
}
return 0;
}