Add More Zero
Problem Description
There is ayoungster known for amateur propositions concerning several mathematical hardproblems.
Nowadays, he is preparing a thought-provoking problem on a specific type ofsupercomputer which has ability to support calculations of integers between 0 and (2m−1) (inclusive).
As a young man born with ten fingers, he loves the powers of 10 so much, which results in his eccentricity that he always ranges integers he would like to use from 1 to 10k (inclusive).
For the sake of processing, all integers he would use possibly in this interesting problem ought to be as computable as this supercomputer could.
Given the positive integer m , your task is to determine maximum possible integer k that is suitable for the specific supercomputer.
Input
The input containsmultiple test cases. Each test case in one line contains only one positiveinteger m, satisfying 1≤m≤105.
Output
For each testcase, output "Case #x: y" in one line(without quotes), where x indicates the case number starting from 1 and y denotes the answer of corresponding case.
Sample Input
1
64
Sample Output
Case #1: 0
Case #2: 19
水题,题意是求(2m−1) 有十进制几位数,其实就是求log10(2m−1),即m*log10(2),代码很简单:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int m,t,k;
t=1;
while(cin>>m)
{
k=double(m)*log10(2.0);
cout<<"Case #"<<t++<<": "<<k<<endl;
}
return 0;
}