Задать вопрос
@IAmJustSpace

Как ускорить код?

Необходимо ускорить код, дабы он выполнялся менее чем за 0.1 секунду
m = int(input())
n = int(input())
p = 0

if m==1 or n==1:
    p=0
elif m==2 or n==2:
    p = 2
elif m >= 3 and n >= 3:
    p = 4
    m-=2
    n-=2
    while m > 1 and n > 1:
        if m >= 3 and n >= 3:
            m-=2
            n-=2
            p+=4
        elif m==2 or n==2:
            m-=2
            n-=2
            p+=2
        else:
            p+=1
print(p)
  • Вопрос задан
  • 196 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
longclaps
@longclaps
Разве не (min(n, m) - 1) * 2?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
tzlom
@tzlom
Мне кажется задача имеет аналитическое решение, т.е. можно вывести функцию от аргументов M и N которая бы не потребовала циклов при вычислении результата.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 20:34
3000 руб./за проект
22 дек. 2024, в 20:12
10000 руб./за проект
22 дек. 2024, в 19:47
3000 руб./за проект