P148PROA spoj PTIT – Dãy số Hailstone

Nguồn đề bài: http://www.spoj.com/PTIT/problems/P148PROA/

1. Đề bài P148PROA spoj

Dãy số Hailstone bắt đầu từ một số tự nhiên N cho trước, các số tiếp theo sẽ được tạo theo quy tắc:
• Nếu số hiện tại là chẵn thì số tiếp theo sẽ bằng số đó chia cho 2.
• Nếu số hiện tại là lẻ thì số tiếp theo sẽ được nhân lên 3 lần rồi cộng 1
• Khi gặp số 1 thì dãy số kết thúc.

Ví dụ, với N = 3 thì dãy số Hailstone tương ứng sẽ là: 3, 10, 5, 16, 8, 4, 2, 1

Bài toán đặt ra là cho trước N, hãy tính chiều dài của dãy Hailstone tương ứng.

Input

Mỗi bộ test ghi trên một dòng số N không quá 100. Input kết thúc với N = 0.

Output

Với mỗi bộ test, ghi ra màn hình duy nhất một số nguyên là kết quả bài toán.

Example

Input:
1
2
3
0

Output:
1
2
8

2. Giải thích code mẫu P148PROA spoj PTIT

– Dùng procedure sinh để tạo sẳn đáp án cho bài.

3. code tham khảo P148PROA spoj PTIT

Trả lời

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *