Группа с наибольшей выработкой панелей

тема: Таблицы: фильтр и группировка · уровень: базовый

Условие

На солнечной электростанции панели объединены в группы обслуживания. Первая таблица сопоставляет идентификатор каждой панели с именем её группы.

Вторая таблица содержит измерения выработки. Одно измерение записывает количество энергии, выработанное панелью за отдельный интервал, в ватт-часах. Для некоторых измерений значение отсутствует и обозначается символом -.

Для каждой группы определяются суммарная выработка и средняя выработка по известным измерениям. Если для группы известны значения \(x_1, x_2, \ldots, x_k\), то суммарная выработка равна \(S=x_1+x_2+\ldots+x_k\), а средняя выработка равна \(A=S/k\). Пропущенные значения не входят ни в сумму, ни в количество \(k\). Требуется вывести имя группы с наибольшей суммарной выработкой. Для каждой группы существует хотя бы одно известное измерение.

Если наибольшая суммарная выработка достигается у нескольких групп, выводится лексикографически меньшее имя группы.

Формат ввода

В первой строке записаны два целых числа n и m — число строк в таблице панелей и число строк в таблице измерений.

Следующие n строк содержат таблицу панелей. В каждой строке записаны два слова: panel_id и group_name — идентификатор панели и имя её группы.

Следующие m строк содержат таблицу измерений. В каждой строке записаны два слова: panel_id и energy. Идентификатор panel_id присутствует в первой таблице. Значение energy равно целому неотрицательному числу ватт-часов или символу -, если измерение отсутствует.

Формат вывода

Выведите имя группы с наибольшей суммарной выработкой.

Округление не применяется, так как выводится строковое имя группы.

Ограничения

1 ≤ n ≤ 500.

1 ≤ m ≤ 1000.

n + m ≤ 1000.

Длина panel_id составляет от 1 до 20 символов. Идентификаторы панелей в первой таблице различны.

Длина group_name составляет от 1 до 20 символов и содержит строчные латинские буквы, цифры и символ _.

Если energy не равно -, то 0 ≤ energy ≤ 100000.

Каждая группа имеет хотя бы одно измерение, в котором energy не равно -.

Решить задачу с автопроверкой на Python →

Куда дальше