ترتيب حسب التكرار مع الحفاظ على الترتيب
Rust
Hard
sorting
مهمة «ترتيب حسب التكرار مع الحفاظ على الترتيب»
إليك نص مهمة البرمجة مترجمًا إلى العربية مع الحفاظ على جميع وسوم HTML وعدم تغيير أي كود برمجي:
<p>لدينا مصفوفة من الأعداد الصحيحة. يجب ترتيبها تنازليًا حسب تكرار ظهور العناصر. إذا ظهر عنصران بنفس عدد المرات، فيجب ترتيبهما حسب ترتيب ظهورهما الأول في المصفوفة الأصلية. المطلوب تنفيذ خوارزمية ترتيب بزمن معقد O(n log n) واستخدام ذاكرة إضافية O(n).</p>
<p>لدينا مصفوفة من الأعداد الصحيحة. يجب ترتيبها تنازليًا حسب تكرار ظهور العناصر. إذا ظهر عنصران بنفس عدد المرات، فيجب ترتيبهما حسب ترتيب ظهورهما الأول في المصفوفة الأصلية. المطلوب تنفيذ خوارزمية ترتيب بزمن معقد O(n log n) واستخدام ذاكرة إضافية O(n).</p>
تنسيق الإدخال
السطر الأول يحتوي على عدد صحيح n (1 ≤ n ≤ 10^5). السطر الثاني يحتوي على n من الأعداد الصحيحة، مفصولة بمسافات.
تنسيق الإخراج
أخرج n عددًا صحيحًا، مفصولة بمسافات — المصفوفة المرتبة.
أمثلة
مثال 1
الإدخال
3
3 2 1
الإخراج
3 2 1
main.rs