مُولّد تقارير مع امتدادات للمجموعات المتداخلة

Kotlin Hard extensions

مهمة «مُولّد تقارير مع امتدادات للمجموعات المتداخلة»

اكتب برنامج Kotlin يستخدم دوال الامتداد (extension functions) لـ List<Map<String, Any>> لإنشاء تقرير: يطبق بالتسلسل تصفية حسب قيمة مفتاح نصي، وترتيب حسب مفتاح صحيح، وتجميع حسب مفتاح نصي، وحساب مجموع حقل صحيح داخل كل مجموعة. بيانات الإدخال: عدد N (عدد السجلات)، ثم N سطرًا بالصيغة 'key1=val1,key2=val2,...'. بيانات الإخراج: لكل مجموعة اطبع 'group_key: sum'، حيث sum هو مجموع قيم الحقل 'score' لسجلات المجموعة. إذا لم يتبقَ أي سجلات بعد التصفية، اطبع 'empty'.

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

<div>عدد صحيح N (1 ≤ N ≤ 1000). ثم N سطر، كل سطر يحتوي على أزواج 'مفتاح=قيمة'، مفصولة بفواصل. المفاتيح: 'name' (سلسلة نصية)، 'group' (سلسلة نصية)، 'score' (عدد صحيح). يمكن أن تحتوي القيم على أحرف لاتينية وأرقام ومسافات فقط. جميع السجلات صالحة.</div>

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

<p>سلاسل من النمط 'group_key: sum' لكل مجموعة بعد المعالجة، مرتبة تصاعديًا حسب group_key. إذا كانت القائمة الناتجة فارغة، اطبع 'empty'.</p>

أمثلة

مثال 1

الإدخال
1 name=Frank,group=B,score=100
الإخراج
B: 100
main.kt