На следующий день Петя сел на автобус, проходящий по кольцевому маршруту через N остановок, и снова уснул. Проснувшись
На следующий день Петя сел на автобус, проходящий по кольцевому маршруту через N остановок, и снова уснул. Проснувшись через X остановок, он решил определить, что было бы быстрее - выйти и поехать обратно или продолжить поездку в ту же сторону по кольцу. Напишите программу, которая считывает значения N и X, а затем определяет и выводит минимальное количество остановок, которые Пете нужно проехать, чтобы вернуться домой, независимо от того, в какую сторону он едет. Ввод: 9 21 Вывод: 3 9
02.12.2023 20:10
Нужно написать программу, которая определит минимальное количество остановок, которые Пете нужно проехать, чтобы вернуться домой, независимо от того, в какую сторону он едет.
Решение:
Для того чтобы решить эту задачу, мы можем воспользоваться простой формулой. Если N - количество остановок на маршруте, а X - количество остановок, после которого Петя проснулся, то минимальное количество остановок, которое Пете нужно проехать, чтобы вернуться домой - это минимальное количество остановок между X и N-X.
Мы можем записать это в виде математического выражения:
если X <= N/2, то минимальное количество остановок = X
иначе минимальное количество остановок = N-X
Демонстрация:
Для ввода "9 21", программе нужно считать значение N = 9 и X = 21.
Поскольку X > N/2, минимальное количество остановок = N - X = 9 - 21 = -12.
Вывод программы будет -12.
Совет:
Для лучшего понимания решения задачи, можно представить маршрут автобуса на бумаге и попробовать решить задачу вручную, используя данную формулу. Это поможет школьнику лучше разобраться в решении и понять, почему оно работает.
Проверочное упражнение:
Попробуйте решить задачу для следующего ввода:
"12 5"