आपने शायद फाइबोनैचि संख्याओं के बारे में सुना है। हां पता है, कि पूर्णांक अनुक्रम के साथ शुरू होता है 1, 1
, और फिर प्रत्येक नए नंबर पिछले दो का योग है?
1 1 2 3 5 8 13...
और इसी तरह। फाइबोनैचि संख्याओं के बारे में चुनौतियाँ यहाँ बहुत लोकप्रिय हैं । लेकिन कौन कहता है कि फाइबोनैचि संख्या के साथ शुरू करना है 1, 1
? वे क्यों नहीं शुरू कर सकते 0, 1
? ठीक है, चलो उन्हें 0 पर शुरू करने के लिए फिर से परिभाषित करें:
0 1 1 2 3 5 8 13...
लेकिन ... हमें या तो वहाँ रुकना नहीं है! यदि हम अगले एक को प्राप्त करने के लिए अंतिम दो संख्याओं को जोड़ सकते हैं, तो हम नई संख्या के लिए पहले नंबर को दूसरी संख्या से घटा सकते हैं। तो यह इसके साथ शुरू हो सकता है 1, 0
:
1 0 1 1 2 3 5 8 13...
हम नकारात्मक को भी समाप्त कर सकते हैं:
-1 1 0 1 1 2 3 5 8 13...
और यह सिलसिला हमेशा के लिए चलता भी है। मुझे लगता है कि यह दिलचस्प है कि यह कैसे नियमित रूप से फाइबोनैचि संख्याओं को प्रदर्शित करने वाले थोड़े को समाप्त करता है, बस हर दूसरे नंबर को नकारात्मक बनाया गया है:
13 -8 5 -3 2 -1 1 0 1 1 2 3 5 8 13...
आइए इस श्रृंखला को "विस्तारित फाइबोनैचि संख्या" या EFN कहते हैं । के बाद से वहाँ वास्तव में इस श्रृंखला शुरू करने के लिए एक स्पष्ट नकारात्मक संख्या नहीं है, हम कहूँगा कि 0 से पता चलता है पर 0 , नियमित रूप से फाइबोनैचि संख्या सकारात्मक सूचकांक करने के लिए विस्तार, और नकारात्मक (आधे नकारात्मक?) फाइबोनैचि संख्या का विस्तार नकारात्मक सूचकांकों में, जैसे:
Indices: ...-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 ...
Values: ...13 -8 5 -3 2 -1 1 0 1 1 2 3 5 8 13...
यह आज की चुनौती की ओर जाता है:
पूर्णांक N को देखते हुए , हर उस सूचकांक को वापस करें जिस पर N EFN श्रृंखला में दिखाई देता है ।
इस कार्य पर कुछ यादृच्छिक अवलोकन:
1 किसी भी अन्य संख्या की तुलना में EFN में अधिक बार दिखाई देता है
[-1, 1, 2]
:। 3 से अधिक स्थानों पर कोई संख्या दिखाई नहीं देगी।प्रत्येक फाइबोनैचि संख्या> 1 या तो एक बार दिखाई देगा (3, 8, 21, आदि) या दो बार (2, 5, 13, आदि)।
नियम स्पष्टीकरण:
- यदि
abs(N)
यह फाइबोनैचि संख्या नहीं है, तो यह EFN श्रृंखला में कभी नहीं दिखाई देगा , इसलिए यदि संभव हो तो आपको कुछ भी नहीं / खाली संग्रह आउटपुट करना चाहिए, या यदि यह आपकी भाषा में संभव नहीं है, तो आप कुछ निरंतर गैर-संख्यात्मक मान का उत्पादन कर सकते हैं। - यदि N EFN में कई स्थानों पर दिखाई देता है , तो आपके आउटपुट को क्रमबद्ध करने की आवश्यकता नहीं है। हालांकि प्रत्येक इंडेक्स बिल्कुल एक बार दिखाई देना चाहिए।
- यद्यपि अधिकांश अनुक्रम चुनौतियां आपको यह चुनने की अनुमति देती हैं कि आप 1-आधारित या 0-आधारित अनुक्रमण का उपयोग करना चाहते हैं, इस चुनौती को वर्णित अनुक्रमणिका का उपयोग करना चाहिए (जहां 0 0 पर प्रकट होता है)।
- आप किसी भी मानक प्रारूप के माध्यम से I / O ले सकते हैं।
परीक्षण के मामलों
-13: []
-12: []
-11: []
-10: []
-9: []
-8: [-6]
-7: []
-6: []
-5: []
-4: []
-3: [-4]
-2: []
-1: [-2]
0: 0
1: [-1, 1, 2]
2: [-3, 3]
3: [4]
4: []
5: [-5, 5]
6: []
7: []
8: [6]
9: []
10: []
11: []
12: []
13: [-7, 7]
और कुछ बड़े परीक्षण मामले:
89: [-11, 11]
1836311903: [46]
10000: []
-39088169: [-38]
हमेशा की तरह, बाइट्स जीत में सबसे छोटा जवाब!