학습
시험

콜라츠 규칙

난이도
BEGINNER

문제 설명

자연수 n이 주어질 때, 아래의 콜라츠 규칙에 따라 n이 1이 될 때까지 연산을 반복합니다.

- n이 1이라면 연산을 종료한다.
- n이 짝수라면 n을 2로 나눈다.
- n이 1보다 큰 홀수라면 n에 3을 곱하고 1을 더한다.

자연수 n이 입력으로 주어지고 콜라츠 규칙에 따라 연산을 반복할 때, 총 반복 횟수를 반환하는 solution 함수를 작성하시오.


제한 사항

  • n은 1 이상 10,000 이하의 자연수입니다.
  • 10,000 이하의 모든 자연수는 문제의 콜라츠 규칙에 따라 연산을 반복할 시 1이 반드시 발생함이 보장됩니다.
  • 모든 중간 연산 결과는 32비트 정수 범위(2,147,483,647)를 벗어나지 않습니다.

예시 테스트케이스 설명

테스트케이스 번호 n return
1 6 8
2 1 0
3 11 14

1번 테스트케이스 설명

  • 6에서부터 콜라츠 규칙을 적용하면 연산 과정은 아래와 같습니다.
    6→3→10→5→16→8→4→2→16 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1
    따라서 총 연산 횟수는 8회입니다.

2번 테스트케이스 설명

  • 입력이 1일 때, 연산을 반복하지 않으므로 총 연산 횟수는 0회입니다.

3번 테스트케이스 설명

  • 11에서부터 콜라츠 규칙을 적용하면 연산 과정은 아래와 같습니다.
    11→34→17→52→26→13→40→20→10→5→16→8→4→2→111 → 34 → 17 → 52 → 26 → 13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1
    따라서 총 연산 횟수는 14회입니다.