@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
longclaps
@longclaps
Разве не (min(n, m) - 1) * 2?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
tzlom
@tzlom
Мне кажется задача имеет аналитическое решение, т.е. можно вывести функцию от аргументов M и N которая бы не потребовала циклов при вычислении результата.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
22 нояб. 2024, в 03:54
1500 руб./за проект
22 нояб. 2024, в 02:56
10000 руб./за проект
22 нояб. 2024, в 00:55
500 руб./за проект