आवृत्ति के अनुसार क्रमबद्ध करें, क्रम बनाए रखते हुए

Rust Hard sorting

कार्य «आवृत्ति के अनुसार क्रमबद्ध करें, क्रम बनाए रखते हुए»

पूर्णांकों की एक सरणी दी गई है। इसे तत्वों की आवृत्ति के अवरोही क्रम में क्रमबद्ध करना आवश्यक है। यदि दो तत्व समान संख्या में आते हैं, तो उन्हें मूल सरणी में उनके पहले प्रकट होने के क्रम में व्यवस्थित किया जाना चाहिए। O(n log n) की समय जटिलता और O(n) की अतिरिक्त मेमोरी के उपयोग के साथ सॉर्टिंग एल्गोरिदम को लागू करना आवश्यक है।

इनपुट प्रारूप

पहली पंक्ति में एक पूर्णांक n (1 ≤ n ≤ 10^5) है। दूसरी पंक्ति में रिक्त स्थानों द्वारा अलग किए गए n पूर्णांक हैं।

आउटपुट प्रारूप

n पूर्णांकों को स्पेस से अलग करके आउटपुट करें — सॉर्ट किया गया ऐरे।

उदाहरण

उदाहरण 1

इनपुट
3 3 2 1
आउटपुट
3 2 1
main.rs