#CCBOTPBA0000058. Truy vết Collatz độ dài (Collatz Sequence Length)

Truy vết Collatz độ dài (Collatz Sequence Length)

Truy vết Collatz độ dài (Collatz Sequence Length)

Nguồn: Phước Hưng OJ

Phiên bản: Phước Hưng OJ Extended

Đề bài

Cho một số nguyên dương nn. Bắt đầu với x=nx=n và ghi lại giá trị này. Khi x≠1x\ne1, thực hiện đúng một thao tác: nếu xx chẵn thì thay xx bằng x/2x/2; nếu xx lẻ thì thay xx bằng 3x+13x+1. Ghi lại giá trị mới sau từng thao tác. Khi xuất hiện 11, dừng lại. Hãy đếm số phần tử đã ghi, tính cả số bắt đầu nn và số kết thúc 11. Không cần in dãy số.

Input

Một dòng chứa số nguyên dương nn.

Output

In một số nguyên duy nhất: số phần tử của dãy Collatz bắt đầu từ nn và kết thúc tại 11.

Subtask

  • Subtask 1 (20%): 1≤n≤201\le n\le20.
  • Subtask 2 (30%): 1≤n≤10001\le n\le1000.
  • Subtask 3 (50%): 1≤n≤1061\le n\le10^6.

Ví dụ

Ví dụ 1

Input:

1

Output:

1

Giải thích: Giá trị ban đầu đã bằng 11, nên không có lần biến đổi nào. Dãy chỉ có một phần tử là 11; kết quả bằng 11, không phải 00.

Ví dụ 2

Input:

6

Output:

9

Giải thích: Lần lượt ghi 6,3,10,5,16,8,4,2,16,3,10,5,16,8,4,2,1. Có 88 lần biến đổi và 99 phần tử, vì phần tử ban đầu cũng được tính.

Ví dụ 3

Input:

3

Output:

8

Giải thích: Dãy là 3,10,5,16,8,4,2,13,10,5,16,8,4,2,1. Đếm lần lượt từng giá trị được ghi thu được 88 phần tử.