Миша заблудился в лесу и пытается выйти из него. Он проходит A
шагов на север, затем
B
шагов на восток, затем
C
шагов на юг,
D
шагов на запад, после чего повторяет свои действия (снова
A
шагов на север,
B
шагов на восток,
C
шагов на юг,
D
шагов на запад и т.д.).
Оказалось, что для того, чтобы выйти из леса из его первоначальной точки ему нужно было пройти ровно
K
шагов в любом из четырёх направлений, то есть первоначально Миша находится в центре квадрата со стороной
2
K
шагов.
Определите, сколько шагов Миша сделает, прежде чем выйдет из леса (впервые окажется на границе леса).
134
226
Ответы на вопрос:
import sys
A = int(input())
B = int(input())
C = int(input())
D = int(input())
K = int(input())
def check(x, y):
if abs(x) > K or abs(y) > K:
return 0
y += A
if y >= K:
return A - (y - K)
x += B
if x >= K:
return A + B - (x - K)
y -= C
if y <= -K:
return A + B + C - (-y - K)
x -= D
if x <= -K:
return A + B + C + D - (-x - K)
return -1
if check(0, 0) != -1:
print(check(0, 0))
sys.exit(0)
x = B - D
y = A - C
left = 0
right = 10 ** 9
while right - left > 1:
mid = (left + right) // 2
if check(x * mid, y * mid) == -1:
left = mid
else:
right = mid
print(right * (A + B + C + D) + check(x * right, y * right))
Объяснение:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Barkinhoev06isl25.10.2020 06:46
-
Элис666666666626.04.2023 15:26
-
ANNANESMN16.03.2020 15:19
-
DFSAFSA21.10.2022 05:14
-
Алижан02511.05.2020 06:56
-
romanres7ov19.02.2023 04:03
-
Назым01122.06.2023 15:15
-
martynyaka30.06.2022 08:48
-
vdovitskaya8811.04.2022 20:15
-
Сашок31107.01.2022 09:36
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.