166. Яндексформеры

Не решаласьЛёгкая

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

Проблема в том, что для Яндексформера нужен компьютер с $K$ клавиатурами, где $K$ — число яндексоидов в объединении. Клавиатур меньше чем Яндексоидов, поэтому необходимо определить максимально возможный уровень Яндексформера, доступного для сборки.

Например:

Пусть доступны разработчики с грейдами $[10, 1, 23, 0, 1]$, а также $2$ клавиатуры. В таком случае оптимально будет объединить в гештальд разработчиков с грейдами $10$ и $23$ - уровень Яндексформера будет равен $33$.

Шаблон кода
/**
* @param {number} N - целое число, количество сотрудников, готовых к объединению
* @param {number[]} staff - массив длины N с грейдами доступных сотрудников
* @param {number} K - целое число, количество доступных клавиатур
* @returns {number}
*/
module.exports = function (N, staff, K) {
    // Ваш код

    return x // x - максимальный уровень Яндексформера
}

Формат ввода

На вход функции подаются три параметра:

  • целое число $N$ ($1 \le N \le 10^7 + 100$) - количество сотрудников, готовых к объединению;

  • массив целых чисел $staff$ ($0 \le staff[i] \le 25$) - список грейдов сотрудников, готовых к объединению;

  • целое число $K$ ($1 \le K \le N$) - количество доступных клавиатур.

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

Функция должна вернуть единственное целое число - максимально возможный уровень Яндексформера при объединении $K$ разработчиков.

Ограничения

Ограничение времени

2,5 с

Ограничение памяти

524 МБ

Пример 1

Ввод
{"N": 8, "staff": [5, 13, 8, 4, 4, 15, 1, 9], "K": 8}
Вывод
{"ans": 59}

Пример 2

Ввод
{"N": 11, "staff": [14, 8, 15, 19, 2, 21, 13, 21, 12, 10, 8], "K": 5}
Вывод
{"ans": 90}

Пример 3

Ввод
{"N": 15, "staff": [19, 20, 5, 10, 2, 20, 7, 9, 1, 3, 13, 14, 3, 3, 4], "K": 1}
Вывод
{"ans": 20}

Пример 4

Ввод
{"N": 12, "staff": [22, 7, 24, 24, 11, 22, 24, 3, 9, 16, 2, 19], "K": 7}
Вывод
{"ans": 151}

Пример 5

Ввод
{"N": 7, "staff": [10, 3, 21, 23, 6, 3, 8], "K": 4}
Вывод
{"ans": 62}

Теги

JavaScript Node.js 12
Нужно войти, чтобы отправить решение.Войти