इस स्टैक ओवरफ्लो प्रश्न से प्रेरित: एक सूची को क्रमबद्ध करना: आरोही में संख्या, अवरोही में अक्षर । आपका कार्य निम्न समस्या को हल करना है और, जैसा कि यह कोड-गोल्फ है , आपको यथासंभव बाइट्स में ऐसा करना चाहिए।
आप इनपुट पत्र युक्त के रूप में वस्तुओं की एक सूची ले जाना चाहिए (किसी भी उचित रूप: string
, char
, आदि) और संख्या। फिर आपको संख्याओं को आरोही क्रम में और अक्षरों को अवरोही क्रम में क्रमबद्ध करना चाहिए। हालांकि, आपको पत्र पदों और संख्या पदों में संख्याओं में अक्षरों को रखना चाहिए। उदाहरण के लिए, यदि सूची है:
[L, D, L, L, D, L]
आउटपुट सूची निम्न के रूप में होनी चाहिए:
[L, D, L, L, D, L]
के माध्यम से काम
इनपुट: ['a', 2, 'b', 1, 'c', 3]
- संख्याओं को बढ़ते क्रम में क्रमबद्ध करें:
[1, 2, 3]
- अवरोही क्रम में अक्षरों को क्रमबद्ध करें:
['c', 'b', 'a']
- उन्हें वापस शामिल करें लेकिन ऑर्डर को समान रखें:
['c', 1', 'b', 2, 'a', 3]
नियम
- सूची में केवल अक्षर और अंक होंगे।
- सूची रिक्त हो सकती है।
- सूची में केवल अक्षर या केवल अंक हो सकते हैं।
- यदि आपकी भाषा मिश्रित प्रकार के सरणियों का समर्थन नहीं करती है तो आप अंकों के बजाय अंक वर्णों का उपयोग कर सकते हैं। ध्यान दें कि यदि आपकी भाषा इसका समर्थन करती है तो आपको मिश्रित प्रकारों का उपयोग करना चाहिए।
- पत्र केवल होंगे
[a-z]
या[A-Z]
, आप चुन सकते हैं कि कौन सा। - पत्र को
a
सबसे कम होने के रूप में क्रमबद्ध किया जाता है ,z
उच्चतम अर्थातa = 1, z = 26
। - मानक खामियों को मना किया जाता है।
- I / O किसी भी मानक साधन द्वारा एक स्ट्रिंग के रूप में हो सकता है।
परीक्षण के मामलों
[5, 'a', 'x', 3, 6, 'b'] -> [3, 'x', 'b', 5, 6, 'a']
[ 3, 2, 1] -> [ 1, 2, 3 ]
[ 'a', 'b', 'c' ] -> [ 'c', 'b', 'a' ]
[] -> []
[ 2, 3, 2, 1 ] -> [1, 2, 2, 3]
यह कोड-गोल्फ बाइट्स जीत में सबसे छोटा जवाब है!