Генератор отчётов с расширениями для вложенных коллекций
Kotlin
Сложный
extensions
Задача «Генератор отчётов с расширениями для вложенных коллекций»
Напишите Kotlin-программу, которая с помощью extension-функций для List<Map<String, Any>> реализует генерацию отчёта: последовательно применяет фильтрацию по значению строкового ключа, сортировку по целочисленному ключу, группировку по строковому ключу и вычисление суммы целочисленного поля внутри каждой группы. Входные данные: число N (количество записей), затем N строк вида 'key1=val1,key2=val2,...'. Выходные данные: для каждой группы вывести 'group_key: sum', где sum — сумма значений поля 'score' для записей группы. Если после фильтрации записей не осталось, вывести 'empty'.
Формат ввода
Целое число N (1 ≤ N ≤ 1000). Затем N строк, каждая содержит пары 'ключ=значение', разделённые запятыми. Ключи: 'name' (String), 'group' (String), 'score' (Int). Значения могут содержать только латинские буквы, цифры и пробелы. Все записи валидны.
Формат вывода
Строки вида 'group_key: sum' для каждой группы после обработки, отсортированные по возрастанию group_key. Если результирующий список пуст, вывести 'empty'.
Примеры
Пример 1
ВВОД
1
name=Frank,group=B,score=100
ВЫВОД
B: 100
main.kt