Задача E. Групповые соревнования

Входной файл:Стандартный вход   Ограничение времени:3 сек
Выходной файл:Стандартный выход   Ограничение памяти:512 Мб

Условие

На соревнованиях по робототехнике участвует M команд, состоящих из одинакового количества человек P.

Каждый участник команды ответственен в определенной компетенции и может получить от 1 до N баллов.

После проведения соревнования пришло время подсчета баллов команд.

Итоговый балл команды рассчитывается как среднее арифметическое по всем компетенциям.

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

При решении задачи воспользуйтесь Java Stream API и следующим классом:


import java.util.*;
import java.util.stream.*;

public class Solution
{
  public static Stream<Double> average(int count, Stream<String> data)
  {
    // Ваш код
  }
}
  

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

На вход вашей функции подается Stream строк, каждая из которых имеет следующий формат: [Имя участника] [Количество баллов]

Участники, относящиеся к одной команде, идут последовательно во входном потоке.

За одной командой следует следующая.

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

Код решения должен содержать только класс Solution с реализацией функции average. Он не должен ничего выводить.

Ограничения

1 ≤ M ≤ 103

1 ≤ P ≤ 104

1 ≤ N ≤ 106

Примеры тестов

Стандартный вход Стандартный выход
1
2
Bron 99
Li 123
Abel 101
John 224
Fred 322
Jonathan 123
111,00
162,50
222,50

0.107s 0.056s 13