• Предмет: Информатика
  • Автор: toktobekovazim60
  • Вопрос задан 5 месяцев назад

Дано N попарно различных целых чисел.
Рассмотрим все непустые подмножества данного набора чисел (их ровно 2N − 1).
Для каждого подмножества вычислим сумму его элементов.
Отсортируем все полученные суммы по невозрастанию.
Ваша задача — найти K-ю в полученном порядке сумму подмножества.
язык питон
тема массив

Ответы

Ответ дал: devpaul
0

Ответ:

Python3:

from itertools import chain, combinations

def subsets_sum(numbers, k):

subsets = list(chain.from_iterable(combinations(numbers, r) for r in range(len(numbers)+1)))

subsets_sum = [sum(subset) for subset in subsets]

subsets_sum.sort(reverse=True)

return subsets_sum[k-1]

numbers = [1, 2, 3, 4, 5]

k = 3

result = subsets_sum(numbers, k)

print("K-th largest sum of subset:", result)

Приложения:
Вас заинтересует