Анисса только что закончила свое выступление в фигурном катании и с нетерпением ждет оценок. Система подсчета баллов на этом соревновании немного необычна: каждого фигуриста оценивают несколько судей, а оценки усредняются для получения итогового результата.
Джоли управляет программным обеспечением, используемым для обработки оценок, и замечает, что хакер взломал систему и добавил множество фальшивых оценок. Она точно знает, сколько оценок должно быть, поэтому она будет вручную аннулировать оценки до тех пор, пока их количество не совпадет с количеством судей, которые, как она знает, действительно выставили оценки.
Проблема в том, что Джоли не знает, какие именно оценки нужно аннулировать. Она решает использовать следующую метрику для оценки «плохости» (badness) набора оценок после того, как будет аннулировано достаточное количество оценок, чтобы их число совпало с количеством судей:
- Вычислить среднее арифметическое всех оценок из выбранного набора.
- Вычислить квадрат отклонения каждой оценки в выбранном наборе от полученного среднего арифметического. То есть, если среднее значение равно $\mu$, а данная оценка равна $x$, то квадрат отклонения равен $(\mu - x)^2$.
- Вычислить сумму всех квадратов отклонений из шага 2. Эта сумма и есть «плохость».
Вычислите минимальную «плохость» среди всех возможных наборов оценок, которые можно получить.
Входные данные
Первая строка входных данных содержит два целых числа $n$ и $k$ ($1 \le k < n \le 5 \cdot 10^5$), где $n$ — общее количество оценок, а $k$ — ожидаемое количество оценок.
Каждая из следующих $n$ строк содержит одно целое число $x$ ($1 \le x \le 10^6$). Это и есть оценки.
Выходные данные
Выведите единственное число — минимальную «плохость» среди всех возможных наборов оценок, которые можно получить. Ответ считается верным, если его абсолютная или относительная погрешность не превышает $10^{-6}$.
Примеры
Примеры 1
4 3 13 13 23 13
0
Примеры 2
5 2 1 2 3 4 5
0.5