자연수 n에 대해 함수 f를 다음과 같이 정의한다.
f(n)은 n을 십진법으로 적었을 때 각 자리 숫자를 제곱해서 모두 더한 값이다.
예를 들어 n=19이면 12+92=82이므로 f(19)=82이다.
어떤 자연수는 f를 반복해서 적용하면 언젠가 1이 된다. 이런 수를 행복한 수라고 한다. 19가 그렇다.
- f(19)=12+92=82
- f(82)=82+22=68
- f(68)=62+82=100
- f(100)=12+02+02=1
모든 자연수가 행복한 수는 아니다. 5로 직접 해 보면 5는 행복한 수가 아니라는 것을 알 수 있다. n이 행복한 수가 아니면 f를 반복 적용한 값은 반드시 다음 순환에 빠진다. 수학자가 이미 증명한 사실이다.
4→16→37→58→89→145→42→20→4
주어진 자연수 n이 행복한 수인지 판정하는 프로그램을 작성하시오.