京东-进制均值

进制均值

http://www.nowcoder.com/questionTerminal/215881ffac304a52812eff45aea8330d

枚举所有进制的和cnt,以及进制个数n-2
进制转换:除法倒排
求cnt和n-2的最大公约数,辗转相除法,递归法理解起来更为容易,并且容易优化
最小公倍数为x*y/gcd(x,y)

import java.util.*;
public class Main{
     //以y为进制的数位和
    public static int sum(int x,int y){
        int cnt=0;
        while(x>0){
            cnt+=x%y;
            x/=y;
        }
        return cnt;
    }
    //辗转相除法求的最大公约数
    public static int gcd(int x,int y){
        if(x==y){return x;}
        return x-y>y?gcd(x-y,y):gcd(y,x-y);
    }

    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        while(sc.hasNextInt()){
            int n=sc.nextInt();
            int cnt=0;
            for(int i=2;i<n;i++){
                cnt+=sum(n,i);
            }
            int t=gcd(cnt,n-2);
            System.out.println((cnt/t)+"/"+((n-2)/t));
        }
    }

}
全部评论

相关推荐

2024-12-27 10:21
已编辑
海南师范大学 媒介策划
到我怀里来:身高体重住址这些就别写了,留几个关键的就行,工作经历突出重点写详细点
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务