Add More Zero
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 0 Accepted Submission(s): 0
Problem Description
There is a youngster known for amateur propositions concerning several mathematical hard problems.
Nowadays, he is preparing a thought-provoking problem on a specific type of supercomputer 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.
Nowadays, he is preparing a thought-provoking problem on a specific type of supercomputer 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 contains multiple test cases. Each test case in one line contains only one positive integer
m
, satisfying
1≤m≤105
.
Output
For each test case, 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
问给一个n,问2^n-1用科学计数法表示,10上面的的数。一开始和队友打表找规律,找半天头都懵了。结果别人说代码就10行,静下来一想就是对10取对数嘛,用一下log函数就行了。。。。。感觉自己真是很菜。
码是我们4级都没过的队长打的
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<cstdio>
using namespace std;
int a[11111];
int main()
{
int cas=0;
long long int n,k;
long long int cmp,res;
while(cin>>n>>k)
{
cas++;
cmp=2*(n-1);
res=(k-n)%cmp;
if(n>=k)
printf("Case #%d: %d\n",cas,k);
else if(res==0)
printf("Case #%d: %d\n",cas,n);
else if(res<=cmp/2)
printf("Case #%d: %d\n",cas,res);
else
printf("Case #%d: %d\n",cas,res-cmp/2);
}
return 0;
}