В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
Luuunar
Luuunar
18.03.2022 21:55 •  Информатика

ПИТОН И С++ К-тая банка
У Никиты есть n банок газировки, каждая из которых имеет свой объём.

Известно, что полезнее всего пить газировку, начиная от банок большего объема и переходя к всё меньшим Никите найти k-ю по полезности банку. Встроенные алгоритмы сортировки не использовать.

Входные данные

В первой строке записаны два числа 1≤n≤105 и 1≤k≤103. Гарантируется, что k≤n.

Далее в строке записаны n целых чисел 0≤ai≤2⋅109 — объёмы банок.

Выходные данные

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

Примеры
Ввод
Вывод
5 5
1 7 2 3 2
1

Показать ответ
Ответ:
mcghcnnbn
mcghcnnbn
10.10.2021 03:35
Системный блок... Самое сокровенное что у нас есть. В нем мы держим большое количество информации, с него мы общаемся с другими людьми, играем в игры, пишем сочинения и многое другое Жизнь его, конечно нелегка, даже очень нелегка... Каждый день мы включаем и работаем на нем, каждый день! С утра до ночи, с ночи до утра! И кого -то иногда, а у кого - то он перетруждается... Да, именно перетруждается. И тогда он отправляется в сервис, а иногда хозяева сами его чинят. И когда он чинится, он опять начинает работать, как окаянный. Не хотел бы я оказаться на его месте. И поэтому, зная про его тяжелую долю, нужно относиться к нему бережно: чистить его ( хотя бы раз в месяц), вовремя заменять термопасту и т.д. 
0,0(0 оценок)
Ответ:
Sergeeva1703
Sergeeva1703
30.01.2023 15:00
 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  Dim Array() As Byte = {102, 103, 105, 105, 104, 108, 101, 109, 111, 113}
  GnomeSort(Array, True)
 End Sub

 ' // Алгоритм гномьей сортировки
 Sub GnomeSort(ByRef Array() As Byte, ByVal ToUpper As Boolean)
  Dim tui As Integer, index As Integer, last As Integer
  If (ToUpper = True) Then tui = 1 Else tui = -1
  index = 1
  last = 2
  Do
   If ((Array(index) * tui) < (Array(index - 1) * tui)) Then
    SWAP(Array(index), Array(index - 1))
    index -= 1
    If (index = 0) Then
     index = last
     last += 1
    End If
   Else
    index = last
    last += 1
   End If
  Loop While (index < (UBound(Array) + 1))
  ' // c2fbefeeebede8eb3a20caf3eff0e8ffedeee220c42ec52e2028632920442d6d6f6e3535
 End Sub

 ' // Функция обмена двух переменных
 Private Function SWAP(ByRef ic_a As Integer, ByRef ic_b As Integer) As Boolean
  Dim Dump As Integer = ic_a
  ic_a = ic_b
  ic_b = Dump
  Return True
 End Function
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота