В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык

Построим последовательность {an} из натуральных чисел, в которой значение а(n) является количеством чисел, меньших n, имеющих большее количество делителей, чем n. например, элемент a(5) = 1,элемент a(100) = 7, а элемент а(1000) = 49. сумма первых 1234 элементов данной последовательности составит …

Ответ:
Kisylyaaa
Kisylyaaa
08.10.2020 00:53
Для каждого числа подсчитаем в цикле количество его делителей, а затем в другом цикле посчитаем количество чисел, меньших текущего, у которых больше делителей

# python 3
from functools import lru_cache
 
@lru_cache(maxsize=None)
def number_of_divisors(m):
    counter = 0
    for i in range(1, m + 1):
        if m % i == 0:
            counter += 1
    return counter
 
counter = 0
for m in range(2, 1234 + 1):
    for k in range(1, m - 1):
        if number_of_divisors(k) > number_of_divisors(m):
            counter += 1
print(counter)
ответ: 281184
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?