Как оптимизировать программу? python3
i = 0
a, b, c = map(int, input().split())
x, y = map(int, input().split())
x = a - x
y = b - y
if x == 0:
pass
elif (x+abs(x)) > 0:
i += x
else:
pass
if y == 0:
pass
elif (y+abs(y)) > 0:
i += y
else:
pass
x = abs(x)+abs(y)
x = x - c
print(abs(x))
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Ну, например,
if y == 0:
pass
elif (y+abs(y)) > 0:
i += y
else:
pass
Итак, что-то выполняется, если y не равно 0 и y+abs(y) > 0. Если y равно 0, это последнее условие не выполнено. Если y<0 - тоже. Так что весь блок заменяется
if y > 0: i += y
То же самое верно и для аналогичного блока x.
А вообще, даже это можно выбросить, потому что i никакой роли в вычислениях не играет :) Так что после получения переменными значений можно просто писать
print(abs(abs(x-a)+abs(y-b)-c))
"По-моему так" (с) Пух