
Напиши программу, которая читает число n, n чисел и число k. Выведи k-е число по величине из чисел
последовательности. Не используй встроенные методы сортировки. Ввод: 4 20 40 10 30 3 Вывод: 20

Ответы на вопрос

n = int(input())
lst = []
for i in range(n):
lst.append(int(input()))
k = int(input())
for i in range(k):
max_val = max(lst)
lst.remove(max_val)
print(max_val)
пайтон



Для решения данной задачи можно использовать алгоритм сортировки выбором. Алгоритм состоит в том, чтобы на каждой итерации выбирать минимальный (или максимальный) элемент из оставшихся и менять его местами с текущим элементом. Применим его для нахождения k-го числа по величине.
Вот пример программы на языке Python, которая решает задачу:
pythondef find_kth_largest_number(numbers, k):
for i in range(k):
min_idx = i
for j in range(i + 1, len(numbers)):
if numbers[j] < numbers[min_idx]:
min_idx = j
numbers[i], numbers[min_idx] = numbers[min_idx], numbers[i]
return numbers[k - 1]
# Чтение чисел и k из ввода
n = int(input("Введите количество чисел: "))
numbers = []
for _ in range(n):
number = int(input("Введите число: "))
numbers.append(number)
k = int(input("Введите k: "))
# Нахождение k-го числа по величине
result = find_kth_largest_number(numbers, k)
print("k-е число по величине:", result)
Пример работы программы:
yamlВведите количество чисел: 4
Введите число: 20
Введите число: 40
Введите число: 10
Введите число: 30
Введите k: 3
k-е число по величине: 20
В данном примере программа считывает число n (количество чисел), затем n чисел последовательности, и наконец число k. После этого вызывается функция find_kth_largest_number
, которая находит k-е число по величине и выводит результат.


Топ вопросов за вчера в категории Информатика







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