위글 수
시간 제한1초메모리 제한1024 MB
최대 75자리 양의 정수와 지수 P(1 to 5)가 주어질 때, 각 자릿수의 P제곱 합으로 만든 수열이 순환에 들어가기까지의 항 수를 구합니다.
문제
소들이 각자의 식별 태그 번호마다 "생애 주기"를 계산하고 있다.
를 만족하는 양의 정수 을 하나 고른다. 예를 들어 57이라면 각 자릿수를 제곱해서 모두 더한다. 이다. 이번에는 결과인 74에 같은 과정을 적용해서 수열의 다음 수 65를 얻는다. 이 과정을 계속 반복하면 수열의 어떤 수가 결국 다시 나타난다.
57에서 시작하면 수열은 37에서 처음으로 반복된다. 이 부분의 수열은 다음과 같다:
57, 74, 65, 61,
그 뒤로 수열은 다음 "생애 주기"에 갇힌다:
37, 58, 89, 145, 42, 20, 4, 16, 37, . . .
각 자릿수를 제곱하는 대신 세제곱해도 수열은 비슷한 운명을 따른다. 시작하는 양의 정수와 를 만족하는 거듭제곱 가 주어졌을 때, 수열이 생애 주기에 빠질 때까지 얼마나 오래 이어지는지 계산하는 프로그램을 작성하라.
입력
75자리를 넘지 않는 양의 정수 하나가 한 줄에 주어진다.
출력
wiggle number를 이루는 수의 앞부분 자릿수 개수를 나타내는 정수 하나를 출력한다.