समस्या
फिबोनाच्ची अनुक्रम 0, 1 से शुरू होता है और प्रत्येक अगली संख्या पिछले दो संख्याओं का योग होती है: 0, 1, 1, 2, 3, 5, 8, …. F(0) = 0 और F(1) = 1।
fibonacci(n) को लागू करें।
इनपुट
n: अनुक्रम में स्थिति।
आउटपुट
F(n) लौटाएँ।
सीमाएँ
0 ≤ n ≤ 90
उदाहरण
इनपुट:
n = 10
अपेक्षित आउटपुट:
expected = 55
इनपुट:
long long n = 10;
अपेक्षित आउटपुट:
long long expected = 55;
इनपुट:
long n = 10;
अपेक्षित आउटपुट:
long expected = 55;
व्याख्या
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55: F(10) = 55।
इनपुट:
n = 0
अपेक्षित आउटपुट:
expected = 0
इनपुट:
long long n = 0;
अपेक्षित आउटपुट:
long long expected = 0;
इनपुट:
long n = 0;
अपेक्षित आउटपुट:
long expected = 0;
व्याख्या
परिभाषा अनुसार F(0) = 0।
कैसे हल करें
पहले खुद कोशिश करें, फिर एक-एक करके संकेत खोलें।
संकेत 1
पहले दो values fixed हैं, इसलिए base cases से start करें.
संकेत 2
Later values को recursively फिर से compute करने के बजाय पिछले दो values से बनाएं.
संकेत 3
Repeated work और deep recursion से बचने के लिए iterative approach use करें.
अपेक्षित जटिलता
समय O(n), अतिरिक्त स्थान O(1)
संदर्भ
यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।