Складываем концы

Создайте функцию, которая будет принимать список чисел любой длины и подсчитывать, сколько из этих чисел соответствуют следующему критерию:

  • Первая и последняя цифра числа в сумме должны давать 10.

Примеры

ends_add_to_10([19, 46, 2098]) ➞ 3

ends_add_to_10([33, 44, -55]) ➞ 1

ends_add_to_10([]) ➞ 0

Примечания

  • все элементы списка будут числами
  • знак «минус» игнорируйте (см. пример 2)
  • если список пуст, возвращаем 0.

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

def ends_add_to_10(nums):
    return sum(int(str(abs(i))[0]) + int(str(abs(i))[-1]) == 10 for i in nums)
ends_add_to_10 = lambda n: sum([int(x[0]) + int(x[-1]) == 10 for x in map(lambda z: str(z).replace('-', ''), n)])
Прокрутить вверх