Задачи с кодом

Наибольшее абсолютное значение

Напишите функцию, которая будет принимать список целых чисел и возвращать сумму положительных или отрицательных чисел из этого списка или же количество нулей в списке — смотря по тому, какая из сумм будет больше в абсолютном выражении.

Например, если передан список [1, 2, 3, 4, 0, 0, -3, -2], функция вернет 10, потому что:

  • сумма положительных чисел = 1 + 2 + 3 + 4 = 10
  • сумма отрицательных чисел = (-3) + (-2) = -5
  • количество нулей = 2
  • 10 > 5 и 10 > 2

Исходим из того, что пустых списков не будет, а числа всегда будут целыми.

Примеры

major_sum([1, 2, 3, 4, 0, 0, -3, -2]) ➞ 10
major_sum([-4, -8, -12, -3, 4, 7, 1, 3, 0, 0, 0, 0]) ➞ -27
major_sum([0, 0, 0, 0, 0, 1, 2, -3]) ➞ 5
# Потому что -3 < 1+2 < 5 
# (5 - количество нулей)

Варианты решения

def major_sum(lst):
    pos, neg, zero = 0, 0, 0
    for n in lst:
        if n > 0:
            pos += n
        elif n < 0:
            neg += n
        else:
            zero += 1
    return max(pos, neg, zero, key=abs)
def major_sum(lst):
    pos = sum([i for i in lst if i > 0])
    neg = sum([i for i in lst if i < 0])
    zero = lst.count(0)

    if abs(neg) > pos and abs(neg) > zero:
        return neg
    else:
        return max(pos, zero)
Марина

Recent Posts

10 удалённых Python-вакансий

Если вы ищете работу на Python, на Talanto.work сейчас есть варианты для junior, middle, senior…

6 месяцев ago

Где искать Python-вакансии в 2026 году: зачем на Talanto.work появился отдельный сценарий поиска

Рынок Python-вакансий большой, но удобным его назвать сложно. Формально вакансий много, однако в реальном поиске…

6 месяцев ago

Срезы в Python со всеми подробностями

Срезы в Python — это больше, чем a[2:7]. В статье — быстрый разбор полезных приёмов:…

8 месяцев ago

Возведение в степень в Python: полное руководство

В этой статье мы рассмотрим возведение в степень в Python с помощью различных методов, от…

9 месяцев ago

Как удалить дубликаты из списка Python?

Дубликаты в списке Python — частая проблема. В статье показано, как быстро убрать повторы, в…

9 месяцев ago

Виртуальный (shared) хостинг от SpaceWeb: технический обзор

Услуга виртуального хостинга на SpaceWeb позволяет арендовать часть сервера (shared-сервера) и разместить на нём свой…

11 месяцев ago