Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
4 / 3 / 1
Регистрация: 15.11.2019
Сообщений: 26

Все возможные суммы элементов списка и количество элементов изначального массива, "вошедшее" в каждую из этих сумм

05.12.2019, 20:30. Показов 10487. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я смог сделать задачу на нахождение всех возможных сумм элементов в некотором массиве:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
result = []
 
#  перебор всех сумм с помощью рекурсии
def ban(result, v, index, curSum):
    if index < len(v):
        curSum += v[index]
        r = index
        while r < len(v):
            r += 1
            if ban(result, v, r, curSum) > 0:
                result.append(ban(result, v, r, curSum))
    return curSum
 
 
v = str(input()).split(', ')
# нахождение всех сумм элементов массива v
for y in range(len(v)):
    v[y] = int(v[y])
for i in range(len(v)):
    if ban(result, v, i, 0) > 0:
        result.append(ban(result, v, i, 0))
    if v[i] > 0:
        result.append(v[i])
print(result)


Но мне ещё нужно увидеть, сколько элементов изначального массива участвовали в "построении" каждой из сумм
Для примера:
есть массив [2, 3, 5], у него есть следующие возможные суммы его элементов: 2, 3, 5, 7(5+2), 8(5+3), 10(5+3+2), соответственно нужно указать, что при 7 было 2 элемента, при 8 - 2, при 10 - 3
Как это сделать? Нужно что-то поменять-дополнить в коде самой функции, но я не понимаю что.

Добавлено через 4 часа 58 минут
Да, забыл отметить, в связи с особенностью моей задачи (наличие отрицательных чисел) видоизменил функцию так, чтоб она выдавала лишь суммы > 0
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.12.2019, 20:30
Ответы с готовыми решениями:

Построить все возможные суммы элементов заданного списка
Задача из раздела &quot;C для начинающих&quot;. Каждый элемент списка входит в сумму не более одного раза.

Найти суммы заданных элементов массива и вычислить произведение этих сумм
дан массив элементов А. Найти суммы элементов с 1 до 5, с 6 до 10, с 11 до 15 и вычислить произведение этих трех сумм

Все возможные суммы элементов массива
На примере одномерного массива с n элементами нужно найти все возможные суммы из чисел в массиве. суммы с 2=мя слагаемыми, с 3-мя, с...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.12.2019, 20:30
Помогаю со студенческими работами здесь

Все возможные суммы элементов массива
Нужно сформировать все возможные суммы массива размерностью N Для массива 1 3 5 Результат 4 6 8 9 То есть рассматриваем все возможные...

Перебрать все возможные суммы элементов массива
Подскажите, пожалуйста, как перебрать все возможные суммы элементов массива. Допустим на вход подается число N и затем N элементов массива...

Как найти все возможные суммы элементов массива
Здравствуйте. Само задание заключается вот в этом: Есть массив 7 5 6 1 Нужно получить: 7+5=12 7+6=13 7+1=8 5+6=11 5+1=6

Взять ВСЕ возможные частичные суммы ряда, потом среди полученных сумм найти ВСЕ возможные попарные произведения
По крайней мере, такое название ей дали, а я как олень повелся, и начал делать её первой))) Условие такое: дана длина ряда чисел, и...

Если все суммы значений элементов этих строк матрицы x (n x m) больше произведений элементов этих строк
Если все суммы значений элементов этих строк матрицы x (n x m) больше произведений элементов этих строк, то вывести сообщение &quot;все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru