Мішки з вівсом
Обмеження: 2 сек., 512 МіБ
У Зеника з Марічкою на фермі є nn жеребців, пронумерованих від 11 до nn. Біля кожного коня стоїть свій мішок з вівсом. У мішку ii-ого коня є aiai кг вівса.
За один хід можна виконати одну з двох дій:
додати один кілограм вівса до мішка будь-якому коню,
забрати один кілограм вівса з мішка будь-якого коня.
Зеник з Марічкою хочуть, щоб на фермі можна було знайти kk жеребців, які мають однакову масу вівса у своїх мішках.
За яку найменшу кількість ходів можна виконати побажання Зеника з Марічкою?
Вхідні дані
У першому рядку задано два цілих числа nn та kk — кількість жеребців на фермі та необхідна кількість жеребців з однаковою масою вівса.
У другому рядку задано nn цілих чисел aiai — маси вівса в мішках коней.
Вихідні дані
Виведіть ціле число — найменшу кількість ходів.
Обмеження
1≤k≤n≤2⋅1051≤k≤n≤2⋅105,
1≤ai≤1091≤ai≤109.
Оцінювання складається з таких блоків:
по 1 балу за кожен приклад з умови,
4 бали: всі aiai однакові,
15 балів: n=kn=k,
27 балів: ai≤2⋅103ai≤2⋅103,
13 балів: n≤47,ai≤2⋅103n≤47,ai≤2⋅103,
20 балів: n≤2000,ai≤2⋅105n≤2000,ai≤2⋅105,
19 балів: без додаткових обмежень.
Бали за блок ви отримаєте, тільки якщо ваша програма пройде всі тести з блоку.
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
7 4 4 47 74 70 40 7 47 | 30 |
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
12 7 8 11 22 36 17 25 1 20 30 81 74 47 | 41 |
Примітки
У першому прикладі потрібно за 2323 ходи забрати 2323 кг вівса з мішка четвертого коня та за 77 ходів додати 77 кг вівса до мішка п’ятого коня. Тоді послідовність aa перетвориться на (4,47_,74,47_,47_,7,47_)(4,47–––,74,47–––,47–––,7,47–––). Після всіх 3030 ходів четверо коней матимуть по 4747 кг вівса.