Создать функцию, которая возвращает количество раз, когда два элемента в списке суммируются к заданному числу.

Подсчет пар элементов с заданной суммой

Функция count_pairs_with_sum принимает список чисел и число, представляющее сумму, и возвращает количество уникальных пар в списке, которые в сумме дают это число.

def count_pairs_with_sum(numbers, target_sum):
    """ Возвращает количество пар, сумма которых равна target_sum. """
    seen = {}
    count = 0
    for number in numbers:
        complement = target_sum - number
        if complement in seen:
            count += seen[complement]
        if number in seen:
            seen[number] += 1
        else:
            seen[number] = 1
    return count

# Пример использования:
nums = [1, 5, 7, -1, 5]
target = 6
result = count_pairs_with_sum(nums, target)
print("Количество пар с суммой", target, ":", result)

Этот метод использует словарь для подсчета количества вхождений каждого элемента в список. Он проверяет, существует ли для каждого элемента дополнение до заданной суммы в словаре, и если да, увеличивает счетчик на количество таких дополнений.

Категория: Практические упражнения Python | Добавил: Admin (03.05.2024)
Просмотров: 17 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: