हम सभी अलग-अलग फैंसी सॉर्टिंग एल्गोरिदम के बारे में जानते हैं, लेकिन इनमें से कोई भी हमें एक तरह से नंबर नहीं देता है जो उच्चारण करना आसान है। इसे मापने के लिए, मैं संख्याओं की सूचियों को क्रमबद्ध करने के लिए सबसे सामान्य तरीका, उच्चारणSort ™ का उपयोग करता हूं।
उच्चारण
संख्याओं के उच्चारण के लिए आधिकारिक नियम (इस चुनौती में) यह है कि अंकों का एक-एक करके उच्चारण किया जाता है, और परिणामी स्ट्रिंग को लेक्सिकोग्राफिक क्रम में क्रमबद्ध किया जाता है। एक उदाहरण के रूप में, इसका मतलब है कि संख्या 845
का उच्चारण किया जाता है "eight four five"
, और तदनुसार क्रमबद्ध किया जाना चाहिए।
ऋणात्मक संख्या
नकारात्मक संख्याओं का उच्चारण शब्द के बहाने किया जाता है "minus"
। इस प्रकार, के -23
रूप में उच्चारित किया जाता है "minus two three"
। ध्यान दें कि यह उत्पादन के बीच में समाप्त होने वाली नकारात्मक संख्याओं का कारण बनता है, 4
(चार) और 9
(नौ) के साथ शुरू होने वाली संख्याओं के बीच सही है ।
एक गाइड के रूप में, उच्चारण ™ के लिए शब्दों का आधिकारिक क्रम है:
- आठ
- पंज
- चार
- ऋण
- नौ
- एक
- सात
- छह
- तीन
- दो
- शून्य
अर्थात्,
8, 5, 4, -, 9, 1, 7, 6, 3, 2, 0
इनपुट
रेंज में पूर्णांकों की एक सूची , जिसमें अधिकतम 100 तत्व हैं। तार की सूची के रूप में इनपुट की अनुमति नहीं है। यदि आपकी भाषा सूची के रूप में इनपुट का समर्थन नहीं करती है, तो अलग-अलग पूर्णांकों के रूप में इनपुट देने की अनुमति है।
इनपुट में कोई भी अमान्य नंबर या 0 से शुरू होने वाली कोई भी संख्या नहीं होगी (केवल संख्या को छोड़कर)। इनपुट आमतौर पर सॉर्ट नहीं किया जाएगा, इसे किसी भी क्रम में दिया जा सकता है।
उत्पादन
एक ही पूर्णांक, उच्चारणSort ™ क्रम में। ध्यान दें कि क्रमांकन प्राप्त करने के लिए संख्याओं को केवल उनके उच्चारण में बदला जाना चाहिए, आउटपुट में कोई तार नहीं होना चाहिए।
उदाहरण
उदाहरणों के लिए, मध्य चरण (कोष्ठक में लिपटे) केवल एक मार्गदर्शक के रूप में कार्य करता है, और आउटपुट का हिस्सा नहीं है।
[1, 2, 3] -> (['one', 'two', 'three']) -> [1, 3, 2]
[-1, 0, 1, 2] -> (['minus one', 'zero', 'one', 'two']) -> [-1, 1, 2, 0]
[-100, 45, 96] -> (['minus one zero zero', 'four five', 'nine six']) -> [45, -100, 96]
[11, 12, 13, 134, 135] -> (['one one', 'one two', 'one three', 'one three four', 'one three five']) -> [11, 13, 135, 134, 12]
आपके परिणामों को सत्यापित करने के लिए एक स्क्रिप्ट भी है ।