문제
1. input n
2. print n
3. if n = 1 then STOP
4. if n is odd then n <- 3n + 1
5. else n <- n/2
6. GOTO 2
위와 같은 알고리즘을 구현하여 22를 입력하면 아래와 같은 결과가 출력이 된다.
22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
이 알고리즘은 1이 출력이 될때 프로그램이 종료된다고 볼 수 있다.
이 알고리즘은 1이 출력이 될때 프로그램이 종료된다고 볼 수 있다.
n이 입력되면, 1을 포함한 출력된 숫자들을 확인할 수 있다.
이 숫자들의 나열들의 총합은 n의 cycle-length라고 한다.
위의 예를 보면, 22의 cycle-length는 16이다.
이 숫자들의 나열들의 총합은 n의 cycle-length라고 한다.
위의 예를 보면, 22의 cycle-length는 16이다.
두개의 정수값을 입력하였을때, 두수를 포함한 두수 사이의 값들에 대해서 최고의 cycle-length값을 출력하는 알고리즘을 작성하시오.
단, 입력은 0 < n < 10000로 제한한다.
입력 : 두 정수를 입력받는다.
예) 400 500
출력 : 입력받은 두 정수와 최고의 cycle-length값을 출력한다.
예) 400 500 142
예) 400 500
출력 : 입력받은 두 정수와 최고의 cycle-length값을 출력한다.
예) 400 500 142