zoukankan      html  css  js  c++  java
  • 2017多校合练1

    题目

    原题链接
    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.

    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

    Statistic | Submit | Clarifications | Back

    题意:问2^m-1有几位…

    思路:你会发现-1只有在 10的倍数时候位数才会发生变化 10-1 = 9, 100-1, 1000-1…2^m不可能出现这种数这里写链接内容,所以只考虑2^m有几位就好了…就是10的几次方, 取个log10, 答案就是m×log2;

    代码

    #include<cstdio>
    #include<cstdlib>
    #include<cstring>
    #include<string>
    #include<algorithm>
    #include<iostream>
    #include<queue>
    #include<map>
    #include<math.h>
    #include<set>
    #include<stack>
    #define ll long long
    #define pb push_back
    #define max(x,y) ((x)>(y)?(x):(y))
    #define min(x,y) ((x)>(y)?(y):(x))
    #define cls(name,x) memset(name,x,sizeof(name))
    using namespace std;
    const int maxn=10e5+10;
    
    
    
    int main()
    {
        ll m;
        ll las=0;
        while(cin>>m)
        {
            ll k=(ll)m*log10(2);
            cout<<"Case #"<<++las<<": "<<k<<endl;
        }
        return 0;
    }
    
  • 相关阅读:
    volatile关键字,使一个变量在多个线程间可见。
    grep sed awk
    mysql高级聚合
    Hive高级聚合GROUPING SETS,ROLLUP以及CUBE
    用SecureCRT来上传和下载文件
    mysql导出导入数据
    redis入门
    spark 常用技巧总结2
    生成数据库字典
    spark 常用技巧总结
  • 原文地址:https://www.cnblogs.com/bryce1010/p/9387452.html
Copyright © 2011-2022 走看看