• UVA-10061


    #include <iostream>
    #include <cstdio>
    #include <cstring>
    #include <string>
    #include <cmath>
    #include <cctype>
    #include <algorithm>
    #include <sstream>
    using namespace std;
    int x,y;
    int f1(){
        int da=2,xx=y,i=2,count1=0;
        while (xx>1)
        {
            if(xx%i==0){
                xx=xx/i;
                da=i;
                count1++;
            }else{
                i++;
                count1=0;
            }
        }
        int count2=0;
        for(i=2;i<=x;i++){
            int p=i;
            while (p>1)
            {
                if(p%da==0){
                    p=p/da;
                    count2++;
                }else break;
            }
        }
        return count2/count1;
    }
    // 首先计算位数,log(n)/log(b) + 1就是n在b进制下有多少位,而log有个公式就是log(M×N) = logM + logN,
    //n! 的位数用公式可以化为( log(1) + log(2) +...+log(n) ) / log(b) + 1,为了精确再加 10^-6。
    int f2(){
        double s=0;
        for(int i=2;i<=x;i++){
            s+=log(i);
        }
        s=s/log(y)+1;
        //cout<<s<<endl;
        return int(s);
    }
    int main(){
        while (cin>>x>>y)
        {
            cout<<f1()<<" "<<f2()<<endl;
        }
        return 0;
    }
  • 相关阅读:
    Springmvc
    Mybatis关联关系
    Mybatis整合ehcache 和 redis
    Mybatis与spring集成
    MyBatis动态sql和分页
    MyBatis入门
    Vue模板语法(二)
    Vue模板语法(一)
    Spring---SSH整合(二)
    Spring---SSH整合
  • 原文地址:https://www.cnblogs.com/MorrowWind/p/12416326.html
Copyright © 2020-2023  润新知