पूर्णांक के 2 डी सरणी को देखते हुए, चलो ब्लॉकों में इसकी पंक्तियों और स्तंभों को क्रमबद्ध करते हैं। इसका मतलब है कि आपको केवल एक दी गई पंक्ति या कॉलम को क्रमबद्ध करना होगा, लेकिन इसे 2 डी सरणी में हर दूसरी पंक्ति या स्तंभ पर छंटनी के लिए आवश्यक परिवर्तनों को लागू करना होगा।
नियम
- इनपुट पूर्णांक का 2 डी सरणी और 1-अनुक्रमित पूर्णांक होगा। यह पूर्णांक पंक्ति को सॉर्ट करने का प्रतिनिधित्व करेगा यदि संख्या सकारात्मक है, या स्तंभ को सॉर्ट किया जाना है यदि संख्या नकारात्मक है (या दूसरा तरीका जो आप चाहते हैं)। उदाहरण: एक
4x3
(पंक्तियों x कॉलम) सरणी को देखते हुए आप एक-2
तर्क के साथ दूसरा स्तंभ या एक3
तर्क के साथ तीसरी पंक्ति को सॉर्ट कर सकते हैं । यह दूसरा तर्क कभी शून्य नहीं होगा और इसका निरपेक्ष मान सरणी के संबंधित आयाम से अधिक कभी नहीं होगा। - आउटपुट भी दिए गए पंक्ति या स्तंभ को सॉर्ट करने के लिए लगाए गए आवश्यक परिवर्तनों के साथ पूर्णांक का 2 डी सरणी होगा। वैकल्पिक रूप से आप सिर्फ STDOUT को सरणी लिख सकते हैं।
- आउटपुट सरणी में आरोही क्रम में निर्दिष्ट पंक्ति या कॉलम होगा। बस ध्यान दें कि जब आपको एक पंक्ति में दो नंबर स्वैप करने की आवश्यकता होती है, तो पूरे कॉलम जहां संख्याएँ स्वैप की जाएंगी। और जब आपको एक कॉलम में दो नंबर स्वैप करने की आवश्यकता होती है, तो पूरी पंक्तियाँ जहाँ संख्याएँ स्वैप की जाती हैं।
- उस स्थिति में जिसमें पंक्ति / स्तंभ को क्रमबद्ध करने के लिए एक ही संख्या कई बार दिखाई देती है, आपके द्वारा मानों को स्वैप करने के तरीके के अनुसार कई समाधान संभव होंगे, बस इसके अनुसार बाकी पंक्तियों / स्तंभों की अदला-बदली की जाए।
उदाहरण
Positive indices for rows and negative indices for columns
[5 8 7 6 [1 3 2 4
1 3 2 4 order by -3 (3rd column) --> 9 6 3 0
9 6 3 0] 5 8 7 6]
[5 8 7 6 [9 6 3 0
1 3 2 4 order by -4 (4th column) --> 1 3 2 4
9 6 3 0] 5 8 7 6]
[5 8 7 6 [5 7 8 6
1 3 2 4 order by 2 (2nd row) --> 1 2 3 4
9 6 3 0] 9 3 6 0]
[5 8 7 6 [6 7 8 5
1 3 2 4 order by 3 (3rd row) --> 4 2 3 1
9 6 3 0] 0 3 6 9]
[1 2 [1 2 [3 2
3 2] order by -2 (2nd column) --> 3 2] or 1 2] (both are valid)
[7 5 9 7 [5 7 7 9 [5 7 7 9
1 3 2 4 order by 1 (1st row) --> 3 1 4 2 or 3 4 1 2
9 6 3 0] 6 9 0 3] 6 0 9 3]
यह कोड-गोल्फ है , इसलिए प्रत्येक भाषा की जीत के लिए सबसे छोटा कोड हो सकता है!