您的位置:首页 > 其它

(数学)HDU 6033 Add More Zero

2017-07-30 22:13 447 查看
HDU-2017 多校训练赛1-1001-Add More Zero

题目网址: HDU 6033 Add More Zero

题意分析:

求 10^k <= 2^m - 1的k 可以取的最大值的整数

思路:

两边去 对数

k <= log (2^m - 1) < log(2^m) = m*log2

所以k的最大值等于 k = m*log2 (向下取整)

代码:

#include <iostream>
#include <cmath>

using namespace std;

int main(int argc, char const *argv[])
{
double m;
int cnt = 1;
double tmp = log10(2.0);
while (~scanf("%lf", &m))
{
printf("Case #%d: ", cnt++);

printf("%d\n", (int)(m*tmp));
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息