Сколько билетов каждого типа пассажир должен купить, чтобы общее количество оплаченных поездок было не меньше
Сколько билетов каждого типа пассажир должен купить, чтобы общее количество оплаченных поездок было не меньше n, а стоимость билетов была минимальной? Предоставьте три целых числа, представляющих количество билетов на 1, 10 и 60 поездок соответственно. Пример: n = 36, результат: 0 0 1.
27.11.2023 07:26
Объяснение:
Чтобы решить данную задачу, необходимо найти такие значения количества билетов на одну, десять и шестьдесят поездок, которые общее количество оплаченных поездок будет не меньше, чем значение переменной n, а стоимость билетов будет минимальной.
Для начала, мы замечаем, что пассажир обязан купить хотя бы один билет на одну поездку, чтобы покрыть n поездок. Стоимость такого билета равна единице.
Оставшееся количество поездок, которые нужно оплатить, после покупки одного билета на одну поездку, составляет n-1. Это число мы можем разделить на 10, чтобы определить, сколько билетов на десять поездок нужно купить. Число 10 было выбрано, потому что его стоимость наиболее эффективна. Если n-1 будет делиться на 10 без остатка, нужно купить (n-1)/10 билетов на десять поездок.
Оставшееся количество поездок, которые нужно оплатить после покупки одного билета на одну поездку и некоторого количества билетов на десять поездок, составляет (n-1)%10. Это число должно быть полным кратным 60, так как один билет на 60 поездок является наиболее выгодным с экономической точки зрения. Чтобы найти количество таких билетов на 60 поездок, мы делим (n-1)%10 на 60 и округляем вверх до ближайшего целого числа.
Таким образом, мы можем определить, сколько билетов каждого типа пассажир должен купить: 1 билет на одну поездку, (n-1)/10 билетов на десять поездок и ceil((n-1)%10/60) билетов на шестьдесят поездок, где ceil(x) обозначает округление числа x вверх до ближайшего целого числа.
Совет:
Чтобы лучше понять эту задачу, рекомендуется взять некоторые конкретные значения для переменной n и выполнить расчеты вручную, чтобы убедиться, что вы правильно понимаете алгоритм решения.
Дополнительное задание:
Предположим, n = 99. Сколько билетов каждого типа пассажир должен купить, чтобы общее количество оплаченных поездок было не меньше 99, а стоимость билетов была минимальной? Поставьте ответ в виде трех целых чисел, представляющих количество билетов на 1, 10 и 60 поездок соответственно.