ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1049. Отважные воздухоплаватели

Time limit excedeed test 9 python
Послано Mark_Komissarov 14 ноя 2017 13:54
What's wrong? I have 'time limit excedeed' in 9th test.



import functools

def pr(n):
    result = []
    i = 2
    now = 1
    while n >= 1:
        if n % i == 0:
            now *= i
            n //= i
        elif n % i != 0 and now > 1:
            result.append(now)
            i += 1
            now = 1
        else:
            i += 1
        if n == 1:
            result.append(now)
            return result

def f(n):
    result = 0
    i = 1
    while i ** 2 < n:
        if n % i == 0:
            result += 1
        i += 1
    if i ** 2 == n:
        return 2 * result + 1
    else:
        return 2 * result

newList = [int(input()) for _ in range(10)]
product = functools.reduce((lambda x, y: x * y), newList)
print(functools.reduce(lambda x, y: x * y, map(f, pr(product))) % 10)