문제
정수(integer number)보다 아름다운 것은 없다.
당신은 양의 정수 1에서 부터 사용하고 있는 숫자에 다음과 같은 연산을 수행하여 목표하는 양의 정수 n에 도달해야 한다. 수행 가능한 연산은 다음과 같다.
● 현재 숫자에 1을 더한다. ● 현재 숫자가 1보다 클 경우 1을 뺀다. ● 현재 숫자에 임의의 정수 제곱을 한다.
위의 연산을 수행하여 양의 정수 n에 도달하기 위한 최소의 연산횟수를 알아내는 프로그램을 작성하라.
예를 들어 80의 경우 총 4번의 연산을 통해서 도달 할 수 있는데, 이는 다음과 같다.
1. 1을 더한다 : 1 + 1 = 2. 2. 다시 1을 더한다 : 2 + 1 = 3. 3. 네 제곱을 한다 : 3^4 = 81. 4. 1을 뺀다 : 80.
입력
입력은 10^18 이하의 양의 정수 n이 입력된다.
출력
n에 도달하기 위한 최소 연산횟수를 출력한다.
예제
80
4