题目地址
解题思路
已知一个整数n, 想求它的位数,可以使用log10(n)来求。
为什么呢?
因为log10(n) = x,也就是10x = n。 那么只要求出int(x)就是n的位数。
对于这个题n就是 2n,位数即int (log10(2 n )),通过对数的性质可得到int (nlog10(2)).
解题思路
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n, t = 1;
while (cin >> n)
{
cout << "Case #" << t++ << ": ";
cout << int (n * log10(2)) << endl;
}
return 0;
}