Задать вопрос
@sinafiz

Как ускорить код на питоне?

У Никиты есть n банок газировки, каждая из которых имеет свой объём.
Известно, что полезнее всего пить газировку, начиная от банок большего объема и переходя к всё меньшим.
Помогите Никите найти k-ю по полезности банку. Встроенные алгоритмы сортировки не использовать.
Входные данные
В первой строке записаны два числа 1≤n≤104 и 1≤k≤100. Гарантируется, что k≤n.
Далее в строке записаны n целых чисел 0≤ai≤2⋅109 — объёмы банок.

Выходные данные
Вывести объём k-ой в порядке полезности банки.

def health_sort(a):
  for i in range(len(a)-1):
    volume=i
    for j in range(i+1, len(a)):
      if a[j]>a[volume]:
        volume=j
    a[volume], a[i] = a[i],a[volume]
  print(a[k-1])
n, k = map(int, input().split())
a = list(map(int, input().split()))
health_sort(a)

код прошел 4 теста, остальные 3 не прошел по времени
  • Вопрос задан
  • 496 просмотров
Подписаться 1 Простой 5 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы