आसान 0 हल किए गए 0% स्वीकृति

Halve Until One

Count how many halvings bring a number down to 1.

समस्या

Repeatedly divide n by 2, dropping any remainder (integer division), until it becomes 1. Count how many divisions that takes.

Implement halve_until_one(n).

Input

n: A positive integer.

Output

Return the number of divisions.

सीमाएँ

1 ≤ n ≤ 1,000,000,000,000

उदाहरण

उदाहरण 1
इनपुट:
n = 20

अपेक्षित आउटपुट:
expected = 4
इनपुट:
long long n = 20;

अपेक्षित आउटपुट:
long long expected = 4;
इनपुट:
long n = 20;

अपेक्षित आउटपुट:
long expected = 4;

व्याख्या

20 → 10 → 5 → 2 → 1 takes 4 divisions.

उदाहरण 2
इनपुट:
n = 1

अपेक्षित आउटपुट:
expected = 0
इनपुट:
long long n = 1;

अपेक्षित आउटपुट:
long long expected = 0;
इनपुट:
long n = 1;

अपेक्षित आउटपुट:
long expected = 0;

व्याख्या

n is already 1, so no divisions are needed.

संदर्भ

यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।

दूसरों से सीखें

समुदाय समाधान

अभी तक कोई प्रकाशित समाधान नहीं। पहला साझा करने के लिए इस चुनौती को हल करें।