Problem 30

问题描述:

 

Surprisingly there are only three numbers that can be written as the sum of fourth powers of their digits:

1634 = 1 4 + 6 4 + 3 4 + 4 4
8208 = 8 4 + 2 4 + 0 4 + 8 4
9474 = 9 4 + 4 4 + 7 4 + 4 4

As 1 = 14 is not a sum it is not included.

The sum of these numbers is 1634 + 8208 + 9474 = 19316.

Find the sum of all the numbers that can be written as the sum of fifth powers of their digits.


 

解决问题:

 

水仙花数。

遍历计算。

 

 

public static int find(int number){
		int sum =0;
		int i;
		 
		//pow(9,5)*6
		double UP = Math.pow(9, 5)*6;
		for( i=4; i<=UP;i++){
			int cur =i;
			String s = i+"";
			int[] num = new int[s.length()];
			int index = 0;
			while(cur!=0){
				num[index] = cur%10;
				cur = cur/10;
				index++;
			}
			int result = 0;
			for(int j=0; j<num.length; j++){
				result += num[j]*num[j]*num[j]*num[j]*num[j];
//				System.out.print(num[j]+"_");
			}
			if(result==i){
				System.out.println(i);
				sum+=i;
			}
			
		}
		
		return sum;
	}
	

 

你可能感兴趣的:(em)