एक निश्चित सीमा के भीतर संख्याओं के एक आयामी क्रम पर विचार करें, अर्थात
[1, 2, 4, 6, 8, 0, 2, 7, 3] in range [0, 10⟩
एवर-बढता ग्राफ * ** एक ऐसी लाइन है जो इस क्रम के सभी बिंदुओं को दाएं से जोड़ती है, और हमेशा ऊपर की ओर जाती है या स्तर पर रहती है। यदि आवश्यक हो, तो रेखा ऊपर से नीचे तक चारों ओर घूमती है और अगले बिंदु को पूरा करने के लिए वहां से ऊपर जाती रहती है।
इस चुनौती का लक्ष्य अनुक्रम को अलग-अलग क्रमों में विभाजित करना है जो सभी गैर-लाभकारी हैं, ताकि जब एक सीमित ऊर्ध्वाधर अक्ष के साथ एक साथ साजिश रची जाए तो वे एक एवर-बढ़ते ग्राफ बनाएंगे। यह एक बाद के अंत में और अगले बाद की शुरुआत के लिए एक बिंदु जोड़कर किया जाता है, ताकि पंक्ति का कोण जो शीर्ष सीमा को पार करता है उस रेखा के साथ संरेखित होता है जो नीचे की सीमा को पार करता है, और दो क्रॉसिंग अंक समान क्षैतिज समन्वय है। ऊपर दिया गया उदाहरण निम्नलिखित आउटपुट देगा:
[1, 2, 4, 6, 8, 10]
[-2, 0, 2, 7, 13]
[-3, 3]
और संबंधित ग्राफ निम्नानुसार दिखेगा: और एक बेहतर दृश्य के लिए बढ़ाए गए अक्ष के साथ: आवश्यक आउटपुट एवरेज-ग्राफिंग के कुछ हिस्सों को बनाने वाले बाद की सूची है। एक भूखंड बनाने की आवश्यकता नहीं है, लेकिन आप बोनस अंक अर्जित करेंगे;)। आउटपुट को बाद में किसी तरह स्पष्ट रूप से अलग करना होगा।
टिप्पणियाँ
- सीमा हमेशा बाईं (समावेशी) सीमा के रूप में शून्य होगी, और सही सीमा कुछ पूर्णांक एन होगी।
- अनुक्रम में वे मान कभी नहीं होंगे जो सीमा के भीतर नहीं हैं।
- पहली अनुवर्ती शुरुआत में एक अतिरिक्त बिंदु नहीं है।
- अंतिम परिणाम अंत में एक अतिरिक्त बिंदु नहीं है।
- यह प्रारंभिक संकेत प्रदान करने के लिए आवश्यक नहीं है जो बाद में साजिश करने के लिए आवश्यक होगा।
परीक्षण के मामलों
Input: [0, 2, 4, 6, 1, 3, 5, 0], 7
Output: [0, 2, 4, 6, 8], [-1, 1, 3, 5, 7], [-2, 0]
Input: [1, 1, 2, 3, 5, 8, 3, 1], 10
Output: [1, 1, 2, 3, 5, 8, 13],[-2, 3, 11],[-7, 1]
Input: [5, 4, 3, 2, 1], 10
Output: [5, 14],[-5, 4, 13],[-6, 3, 12],[-7, 2, 11],[-8, 1]
Input: [0, 1, 4, 9, 16, 15, 0], 17
Output: [0, 1, 4, 9, 16, 32], [-1, 15, 17], [-2, 0]
स्कोरिंग
यह कोड-गोल्फ है, बाइट्स जीत में सबसे छोटा कोड।
* वास्तविक शब्दजाल नहीं ** वास्तव में एवर नॉन-घटता ग्राफ कहा जाना चाहिए, जैसा कि @ngm ने बताया, लेकिन यह कम प्रभावशाली लगता है।