परिचय:
बाद में मैंने दो इंद्रधनुष से संबंधित चुनौतियों को पोस्ट किया: कोडगॉल्फ रेनबो: फन विथ इंटेगर- एरेस 1 और कोडगॉल्फ इंद्रधनुष: ड्रा इन ब्लैक-एंड-व्हाइट 2 , ASCII में @ChrisM द्वारा निम्नलिखित टिप्पणी की गई थी ( ब्लैक-एंड-व्हाइट में ड्रा) ) चुनौती :
हो सकता है कि आप यह जानते हों और यह डिजाइन के द्वारा हो (मुझे पता है कि इंद्रधनुष इंद्रधनुषी या असिसी नहीं होते हैं, और उच्चतर आदेशों की स्थिति अधिक जटिल होती है), लेकिन क्या दूसरे इंद्रधनुष में रंग उलटे नहीं हैं?
और वह वास्तव में सही है। जब आप एक डबल इंद्रधनुष देखते हैं, तो दूसरा वास्तव में पहले का प्रतिबिंब होता है, इसलिए रंग उलट होते हैं। तीन इंद्रधनुषों के साथ, यह एक वास्तविक डबल इंद्रधनुष है, तीसरा एक अन्य दो में से एक का प्रतिबिंब है। और चार के साथ, दो इंद्रधनुष हैं, और उन में से दो प्रतिबिंब हैं।

तो, चलो उस तथ्य का उपयोग करके एक तीसरी संबंधित चुनौती बनाते हैं।
चुनौती:
इनपुट्स: एक सकारात्मक पूर्णांक nजो होता है >=2, और पूर्णांकों के आकार की एक सूची >= n+1।
आउटपुट: एक ही सूची इस प्रकार है:
- पहले आकार की उप-सूचियों में इनपुट सूचियों को विभाजित करें
n(जहां अनुगामी उप-सूची सीमा में किसी भी आकार की हो सकती है[1,n])। - फिर हम उप-सूचियों की मात्रा के आधार पर निम्नलिखित करते हैं
m:m - m//2उप-सूचियों की पहली राशि को निम्नतम से उच्चतम (जहां//पूर्णांक-विभाजन) सॉर्ट करें । (यानी 6 उप-सूचियों के साथ पहले तीन को सबसे कम से उच्चतम तक क्रमबद्ध किया जाएगा। 5 उप-सूचियों के साथ मुट्ठी तीन को सबसे कम से उच्चतम तक क्रमबद्ध किया जाएगा।)m//2उप-सूचियों की अंतिम राशि को उच्चतम से निम्नतम (जहां//पूर्णांक-विभाजन) सॉर्ट करें । (यानी 6 उप-सूचियों के साथ अंतिम तीन को उच्चतम से सबसे कम क्रमबद्ध किया जाएगा। 5 उप सूचियों के साथ अंतिम दो को उच्चतम से सबसे कम क्रमबद्ध किया जाएगा।)
- फिर से एक सूची बनाने के लिए सभी उप-सूचियों को एक साथ मिलाएं
उदाहरण:
इनपुट्स: n=7और [3,2,1,-4,5,6,17,2,0,3,5,4,66,-7,7,6,-5,2,10]
चरण 1: [[3,2,1,-4,5,6,17],[2,0,3,5,4,66,-7],[7,6,-5,2,10]]
चरण 2: [[-4,1,2,3,5,6,17],[-7,0,2,3,4,5,66],[10,7,6,2,-5]]
चरण 3 / आउटपुट:[-4,1,2,3,5,6,17,-7,0,2,3,4,5,66,10,7,6,2,-5]
इनपुट्स: n=4और [7,4,-8,9,3,19,0,-23,-13,13]
चरण 1: [[7,4,-8,9],[3,19,0,-23],[-13,13]]
चरण 2: [[-8,4,7,9],[-23,0,3,19],[13,-13]]
चरण 3 / आउटपुट:[-8,4,7,9,-23,0,3,19,13,-13]
चुनौती नियम:
- पूर्णांक इनपुट
n1 से बड़ा होने की गारंटी है। - पूर्णांक-सूची का आकार इससे बड़ा होने की गारंटी है
n। - अनुगामी उप-सूची से छोटी हो सकती है
n(जैसा कि उदाहरणों और परीक्षण मामलों में देखा जा सकता है)। - I / O प्रारूप किसी भी उचित प्रारूप में लचीला है। एक पूर्णांक या दशमलव की एक सूची / सरणी हो सकती है, एक अल्पविराम / अंतरिक्ष / न्यूलाइन सीमांकित स्ट्रिंग, पूर्णांक की धारा, आदि (आउटपुट चरण 2 की सूची की 2 डी सूची नहीं हो सकती है। चरण 3 इसे एक सूची में वापस समतल करने के लिए हो सकता है। इस चुनौती के लिए आवश्यक है।)
सामान्य नियम:
- ये है कोड गोल्फ, तो बाइट्स जीत में सबसे कम जवाब।
कोड-गोल्फ भाषाओं को गैर-कोडगॉल्फिंग भाषाओं के साथ उत्तर पोस्ट करने से हतोत्साहित न करें। 'किसी भी' प्रोग्रामिंग भाषा के लिए यथासंभव संक्षिप्त उत्तर के साथ आने का प्रयास करें। - मानक नियम आपके उत्तर के लिए लागू होते हैं , इसलिए आपको उचित पैरामीटर और रिटर्न-प्रकार, पूर्ण कार्यक्रमों के साथ STDIN / STDOUT, फ़ंक्शन / विधि का उपयोग करने की अनुमति दी जाती है। तुम्हारा कॉल।
- डिफ़ॉल्ट ढीले निषिद्ध हैं।
- यदि संभव हो, तो कृपया अपने कोड के लिए एक परीक्षण के साथ एक लिंक जोड़ें।
- साथ ही, आपके उत्तर के लिए स्पष्टीकरण जोड़ने की अत्यधिक अनुशंसा की जाती है।
परीक्षण के मामलों:
Inputs: n=7 and [3,2,1,-4,5,6,17,2,0,3,5,4,66,-7,7,6,-5,2,10]
Output: [-4,1,2,3,5,6,17,-7,0,2,3,4,5,66,10,7,6,2,-5]
Inputs: n=4 and [7,4,-8,9,3,19,0,-23,-13,13]
Output: [-8,4,7,9,-23,0,3,19,13,-13]
Inputs: n=2 and [7,-3,1]
Output: [-3,7,1]
Inputs: n=3 and [1,6,99,4,2]
Output: [1,6,99,4,2]
Inputs: n=2 and [5,2,9,3,-5,-5,11,-5,4,12,9,-2,0,4,1,10,11]
Output: [2,5,3,9,-5,-5,-5,11,4,12,9,-2,4,0,10,1,11]
Inputs: n=3 and [5,2,9,3,-5,-5,11,-5,4,12,9,-2,0,4,1,10,11]
Output: [2,5,9,-5,-5,3,-5,4,11,12,9,-2,4,1,0,11,10]