알고리즘,손코딩 문제

프로젝트 오일러 문제 34 : 각 자릿수의 팩토리얼을 더하면 자기 자신이 되는 모든 수의 합을 구하세요.

알통몬_ 2017. 3. 11. 20:35
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 

숫자 145에는 신기한 성질이 있습니다. 각 자릿수의 팩토리얼(계승)을 더하면  1! + 4! + 5! = 1 + 24 + 120 = 145 처럼 자기 자신이 됩니다.

이렇게 각 자릿수의 팩토리얼을 더하면 자기 자신이 되는 모든 수의 합을 구하세요.

단, 1! = 1 과 2! = 2 의 경우는 덧셈이 아니므로 제외합니다.



* 제가 푼 답이 정확한 코딩은 아닌거 같습니다 ㅎㅎ


public class Question34 {


public static void main(String[] args) {

int pac = 3;

int gop = 1;

int sum = 0;

int total = 0;

while (pac<100000) {

pac++;

sum = 0;

String pac2 = String.valueOf(pac);

String[] pac3 = pac2.split("");

for (int i = 0; i < pac3.length; i++) {

gop = 1;

for (int j = 1; j <= Integer.parseInt(pac3[i]); j++) {

gop *= j;

}

sum += gop;

}

if (sum == pac) {

total += pac;

System.out.println(total);

}


}

}


}

반응형