Python 3 Флеш и Зум на пробежке
Флеш и Зум сильно постарели, из‑за чего у них больше нет сил для того, чтобы сражаться друг с другом. Поэтому сейчас они просто друзья, которые каждое утро выходят на пробежку.
Сегодня они решили бегать по стадиону, который представляет собой окружность длины d
километров. Герои одновременно начнут бежать в одном направлении из одной точки. При этом Флеш побежит со скоростью v1
км/с, а Зум —
со скоростью v2
км/с. После t
секунд бега они оба остановятся и будут отдыхать. А вам нужно посчитать, сколько километров ещё надо пробежать Флешу (не обязательно в том же направлении, в котором он бежал ранее), чтобы оказаться с Зумом в одной точке.
Формат входных данных
Первая строка содержит одно целое число d
(1⩽d⩽109)
—
длину стадиона в километрах.
Вторая строка содержит одно целое число v1
(1⩽v1⩽109)
—
скорость Флеша в км/с.
Третья строка содержит одно целое число v2
(1⩽v2⩽109)
—
скорость Зума в км/с.
Четвертая строка содержит одно целое число t
(1⩽t⩽109)
—
длительность пробежки в секундах.
Гарантируется, что v1⋅t⩽109
и v2⋅t⩽109
.
Формат выходных данных
Выведите одно целое число —
минимальное количество километров, которое необходимо пробежать Флешу, чтобы оказаться с Зумом в одной точке.
Система оценки
Решения, правильно работающие при t⩽100 000
, будут оцениваться в 50
баллов.
Замечание
Рассмотрим первый пример. За три секунды Флеш пробежит 9
километров, а Зум —
15
километров. Тогда расстояние по направлению бега от Флеша до Зума будет равно 6
километрам, а если Флеш развернётся, то 4
километрам. Таким образом, ответ —
4
километра.
Ввод 10 3 5 3 Вывод 4
d = int(input('Длина окружности: '))
f_speed = int(input('Скорость Флеша: '))
z_speed = int(input('Скорость Зума: '))
t = int(input('Время бега: '))
f_distance = f_speed * t
z_distance = z_speed * t
f_pos = f_distance%d
z_pos = z_distance%d
f_to_z_distance = abs(f_pos - z_pos)
print(f_to_z_distance)
d = int(input()) # Длина стадиона в километрах
v1 = int(input()) # Скорость Флеша в км/с
v2 = int(input()) # Скорость Зума в км/с
t = int(input()) # Длительность пробежки в секундах
# Рассчитываем расстояние, которое пройдут Флеш и Зум за время t
distance_flash = v1 * t
distance_zoom = v2 * t
# Рассчитываем остаток от деления на длину стадиона
distance_flash %= d
distance_zoom %= d
# Рассчитываем минимальное расстояние, которое Флешу нужно пробежать
min_distance = min(abs(distance_flash - distance_zoom), d - abs(distance_flash - distance_zoom))
print(min_distance)
делала не сама а через нейросеть. показывает 100 из 100
d = int(input())
f_speed = int(input())
z_speed = int(input())
t = int(input())
f_distance = f_speed * t
z_distance = z_speed * t
f_pos = f_distance%d
z_pos = z_distance%d
l = abs(f_pos - z_pos)
if f_pos<(d//2):
k= f_pos
else:
k = d-f_pos
if z_pos<(d//2):
n= z_pos
else:
n=d-z_pos
m = n+k
if l>m:
print(m)
else:
print(l)
d = int(input()) # длина стадиона в километрах
v1 = int(input()) # скорость Флеша в км/с
v2 = int(input()) # скорость Зума в км/с
t = int(input()) # длительность пробежки в секундах
distance_flashed = v1 * t # расстояние, которое пробежит Флеш за время t
# В оставшемся пути у Флеша нужно пробежать (d - distance_flashed) километров,
# чтобы оказаться с Зумом в одной точке. Однако, если пробежанное расстояние
# в направлении бега Флеша больше, чем расстояние до Зума,
# Флеш должен развернуться и пробежать остаток пути в обратном направлении.
remaining_distance = d - distance_flashed
if remaining_distance <= v2 * t:
result = max(0, remaining_distance)
else:
result = remaining_distance - v2 * t
print(result)
d = int(input())
v1 = int(input())
v2 = int(input())
t = int(input())
distance = (v1 * t) + (v2 * t)
if distance >= d:
print(0)
else:
print(d - distance )