'''
Для интервала [33333;55555] найдите числа, которые кратны сумме своих простых делителей.
В качестве ответа приведите числа, для которых сумма простых делителей больше 250, –
сначала найденное число, затем сумму его простых делителей.
Примечание: само число в качестве делителя не учитывается.
'''

'''
имеются ввиду уникальные делители. И единица не учитывается
'''


for number in range(33333, 55555 + 1):

    number_copy = number
    divisor_sum = 0

    # Перебираем все делители от 2 до корня числа.
    for divisor in range(2, int(number**0.5) + 1):

        # суммируем только уникальные делители
        if number_copy % divisor == 0:
            divisor_sum += divisor
            # делим на делитель пока делится
            while number_copy % divisor == 0:
                number_copy //= divisor

        # проверяем не разложили ли число полностью
        if number_copy <= 1:
            break

    # учитываем возможный делитель числа больший корня этого числа,
    # но не само это число (на случай, если число простое)
    else:
        if number_copy != number:
            divisor_sum += number_copy

    # распечатываем подходящие варианты
    if divisor_sum > 250 and number % divisor_sum == 0:
        print(number, divisor_sum)
