Контест Junior Память и производительность спрашивают часто обновлено
k наибольших чисел
Условие
Дан массив из n целых чисел. Выведите k наибольших по убыванию (с повторами).
Ввод: n и k (1 ≤ k ≤ n ≤ 3000), затем n чисел, по модулю до 10⁹.
Вывод: k чисел через пробел по убыванию.
Пример
6 3
5 1 9 3 9 2
9 9 5
Как подойти
Подсказки: 2
- Куча размера k или сортировка.
- Читайте ввод целиком, а не построчно.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.
Предыдущий вопрос
Суммы на отрезках: префиксные суммы
Следующий вопрос
Почему локальные переменные быстрее глобальных
Ещё по теме «Память и производительность»
- Встроенные функции против ручного цикла
- Пересечение больших списков id
- Числа Фибоначчи без экспоненты
- Скользящая медиана потока на двух кучах
- Найти пару с суммой быстрее O(n²)
- Циклические ссылки и gc
- Управление памятью в CPython
- Инструменты профилирования Python