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

Для X  = 3052336  найдите разность между количеством делителей числа X  , которые больше квадратного корня из     X  и количеством делителей числа X  , которые меньше квадратного корня из X  . В ответе укажите искомую разность.

Обратим внимание, что если d  — делитель числа X  , то и X ∕∕d  — делитель числа X  . Очевидно, эти два числа находятся по разную сторону от √--  X  (иначе, предположим, что они оба меньше, тогда X = d∗ X∕∕d < √x-∗√x-< X,  чего явно не может быть, случай, когда оба больше — аналогичен). Таким образом, мы видим, что все делители разбиваются на пары, в которых один делитель меньше корня, а другой — больше. Отсюда понимаем, что делителей, меньших корня столько же, сколько и больших.

print(0)

А теперь представим, что мы не знаем математику, и попробуем решить это другим способом:

x = 3052336
sq = x ** 0.5
more = 0
less = 0
for i in range(1, x + 1):
    if x % i == 0:
        if i > sq:
            more += 1
        if i < sq:
            less += 1
print(more - less)

Ответ: 0
Оцените статью
Я решу все!