Задача к ЕГЭ по информатике на тему «делители числа» №16

Среди целых чисел, принадлежащих числовому отрезку [398790; 863777], найдите числа, сумма натуральных делителей которых больше 2700000. Для каждого найденного числа запишите количество делителей и их сумму. В качестве делителей не рассматривать числа 1 и исследуемое число. Так, например, для числа 8 учитываются только делители 2 и 4. Поиск ведется от меньших чисел к большим. В ответе числа запишите через пробел.

def count_del(x): # функция возврающая список делителей числа
    ans = []
    for i in range(2, int(x ** 0.5) + 1):
        if x % i == 0:
            ans += [i]
            if i != x // i:
                ans += [x // i]
    return ans


ans = 0
for i in range(398790, 863777 + 1):
    d = count_del(i)
    if sum(d) > 2700000:
        print(len(d), sum(d))

Ответ: 238 2858639 214 2799215 190 2734919 198 2739119
Оцените статью
Я решу все!