题目描述:
一个数A如果如果按2到A-1进制表示时,各个位数之和的均值是多少,所有的计算均基于十进制进行,结果也用十进制表示为不可约简的分数形式。
输入
输入中有多组数据,每组测试数据为一个整数A (1<A<=5000)
样例输入
5
3
样例输出
7/3
2/1
import java.util.Scanner;
public class Main {
public static int max(int a,int b){
while(a!=b){
if(a>b)
a-=b;
else
b-=a;
}
return b;
}
public static void handle(int n){
int sum=0;
if(n==2){
System.out.println(n);
}else{
for (int i = 2; i < n; i++) {
for (int j = n; j >0; j/=i) {
sum+=j%i;
}
}
n=n-2;
int max=max(sum,n);
System.out.println(sum/max+"/"+n/max);
}
}
public static void main(String[] args) {
int a;
Scanner s=new Scanner(System.in);
while (s.hasNext()) {
a=s.nextInt();
Main.handle(a);
}
}
}