030 数字五次幂
奇怪的是,只有三个数字可以被写成它们各位数的四次方之和:
注:对于 1=14由于并不是一个和,所以不包括在内。
上面三个数的和 1634+8208+9474=19316
找出所有能被写成各位数字五次方之和的数之和。
答案:443839
代码如下:
public static int sum(int n){
int t=0;
for(int i=2;i<=1000000;i++){
if(pow(i,n)) t+=i;
}
return t;
}
public static boolean pow(int n1,int n2){
String s=Integer.toString(n1);
int t=0;
for(int i=0;i<s.length();i++){
t+=Math.pow(s.charAt(i)-'0',n2);
}
if(t==n1) return true;
return false;
}
public static void main(String[] args) {
System.out.println(sum(5));
}
程序运行结果: