पृष्ठभूमि
ज्यादातर सभी फाइबोनैचि संख्याओं से परिचित हैं F(n)
:
0, 1, 1, 2, 3, 5, 8, 13, 21 ...
ये और के F(n) = F(n-1) + F(n-2)
साथ पुनरावृत्ति फ़ंक्शन द्वारा बनते हैं । A000045F(0)=0
F(1)=1
बारीकी से संबंधित अनुक्रम लुकास संख्या है L(m)
:
2, 1, 3, 4, 7, 11, 18, 29 ...
ये और के L(m) = L(m-1) + L(m-2)
साथ पुनरावृत्ति फ़ंक्शन द्वारा बनते हैं । A000032L(0)=2
L(1)=1
हम निर्माण और साथ ही / विषम सूचकांकों के आधार पर दो अनुक्रमों के बीच वैकल्पिक कर सकते हैं,
A(x) = F(x)
अगर x mod 2 = 0
और A(x) = L(x)
अन्यथा। उदाहरण के लिए, के बाद से A(4)
बराबर है । हम इस क्रम फोन करता हूँ लुकास-nacci नंबर , :F(4)
4 mod 2 = 0
A(x)
0, 1, 1, 4, 3, 11, 8, 29, 21, 76 ...
यह प्रत्यावर्तन समारोह द्वारा गठित किया जा सकता A(x) = 3*A(x-2) - A(x-4)
के साथ A(0)=0
, A(1)=1
, A(2)=1
, और A(3)=4
। A005013
चुनौती
दिए गए इनपुट के अनुसार n
, ऊपर बताए अनुसार n+1
और सहित संख्याओं का क्रम आउटपुट A(n)
। नवीनतम बाइट्स (या बाइट-समकक्ष, जैसे लैब व्यू के लिए , जैसा कि मेटा पर व्यक्तिगत रूप से निर्धारित होता है) जीतता है।
इनपुट
एक एकल गैर-नकारात्मक पूर्णांक n
।
उत्पादन
संख्याओं की एक सूची जो लुकास-नेक्सिया संख्याओं के बाद के से मेल खाती A(0)
है A(n)
। सूची क्रमबद्ध क्रम में होनी चाहिए जैसा कि ऊपर वर्णित है।
नियम
- मानक कोड-गोल्फ नियम और लूपहोल प्रतिबंध लागू होते हैं।
- मानक इनपुट / आउटपुट नियम लागू होते हैं।
- इनपुट नंबर किसी भी उपयुक्त प्रारूप में हो सकता है: एकात्मक या दशमलव, STDIN, फ़ंक्शन या कमांड-लाइन तर्क, आदि से पढ़ा - आपकी पसंद।
- आउटपुट को STDOUT में प्रिंट किया जा सकता है या फ़ंक्शन कॉल के परिणामस्वरूप वापस किया जा सकता है। यदि मुद्रित किया जाता है, तो संख्याओं को अलग करने के लिए उपयुक्त सीमांकक को शामिल किया जाना चाहिए (अंतरिक्ष-पृथक, अल्पविराम से अलग, आदि)।
- इसके अतिरिक्त, अगर STDOUT, आसपास के व्हाट्सएप, ट्रेलिंग न्यूलाइन, आदि के लिए आउटपुट सभी वैकल्पिक हैं।
- यदि इनपुट एक गैर-पूर्णांक या एक नकारात्मक पूर्णांक है, तो प्रोग्राम कुछ भी या कुछ भी नहीं कर सकता है, क्योंकि व्यवहार अपरिभाषित है।
उदाहरण
Input -> Output
0 -> 0
5 -> 0, 1, 1, 4, 3, 11
18 -> 0, 1, 1, 4, 3, 11, 8, 29, 21, 76, 55, 199, 144, 521, 377, 1364, 987, 3571, 2584