الفرز الثلاثي: التكرار، الطول، المعجمي

Python Hard sorting

مهمة «الفرز الثلاثي: التكرار، الطول، المعجمي»

```html
<p>يتم تقديم قائمة من السلاسل النصية. مطلوب ترتيب السلاسل وفقًا لثلاثة معايير: أولاً حسب تناقص تواتر ظهور السلسلة في القائمة الأصلية، ثم حسب تزايد طول السلسلة، وأخيرًا معجميًا (بترتيب تصاعدي، المقارنة القياسية للسلاسل). إذا كانت سلسلتان لهما نفس التواتر والطول، يتم المقارنة بينهما معجميًا. قم بتنفيذ الترتيب دون استخدام دالة الترتيب المضمنة مع مفتاح مخصص (محظور)، ولكن فقط باستخدام دالة الترتيب الخاصة بك (على سبيل المثال، الترتيب السريع، ترتيب الدمج، أو غيرها). بيانات الإدخال: أولاً عدد صحيح N (1 ≤ N ≤ 10^5) — عدد السلاسل، ثم N من السلاسل. قم بإخراج السلاسل بترتيب مصنف، كل سلسلة في سطر جديد. الحد الزمني: 2 ثانية، حد الذاكرة: 256 ميجابايت.</p>
```

تنسيق الإدخال

أول سطر يحتوي على عدد صحيح N (1 ≤ N ≤ 10^5). بعد ذلك تأتي N من الأسطر، كل سطر قد يحتوي على أي أحرف قابلة للطباعة (باستثناء المسافات)، طول السطر يتراوح من 1 إلى 20 حرفًا.

تنسيق الإخراج

أخرج N من الأسطر بالترتيب المطلوب، كل سطر في سطر منفصل.

أمثلة

مثال 1

الإدخال
1 10
الإخراج
17

مثال 2

الإدخال
5 3 1 4 1 5
الإخراج
3 1 4 1 5
main.py