#CCBCHMOT0000006. Lặp nhân đôi có giới hạn (Doubling to Reach a Limit)

Lặp nhân đôi có giới hạn (Doubling to Reach a Limit)

Lặp nhân đôi có giới hạn (Doubling to Reach a Limit)

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

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

Đề bài

Bắt đầu với số x=1x=1. Mỗi thao tác nhân đôi giá trị hiện tại, tức x←2xx\gets2x. Cho ngưỡng nguyên dương NN, hãy tìm số thao tác ít nhất để x≥Nx\ge N. Nếu N=1N=1 thì không cần thao tác.

Input

Một số nguyên dương NN.

Output

Một số nguyên không âm là số lần nhân đôi.

Subtask

  • Subtask 1 (20%): 1≤N≤41\le N\le4.
  • Subtask 2 (30%): 1≤N≤10001\le N\le1000.
  • Subtask 3 (50%): 1≤N≤1091\le N\le10^9.

Ví dụ

Ví dụ 1

Input

17

Output

5

Giải thích

Các giá trị sau từng lượt là 1,2,4,8,16,32. Sau 4 lượt mới được 16<17; lượt 5 được 32>=17.

Ví dụ 2

Input

1

Output

0

Giải thích

Giá trị đầu 1 đã đạt N=1 nên while không chạy.