Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

помогите решить до 15.00 очень срочно!!!

Иван Ткаченко Ученик (237), закрыт 11 лет назад
Задача B - ЗаправкаОграничение времени: 1 с
Ограничение памяти: 1024 M

Молодой и успешный предприниматель Борис подъехал к автозаправке, на которой работало две бензоколонки, причем первая заправляла со скоростью V1, а вторая со скоростью V2 литров бензина в секунду. Из-за снежных заносов все машины выстроились в одну очередь, и когда освобождалась одна из колонок, то первая в очереди машина тут же направлялась к ней. После этого машины сдвигались вперед к заправке. В процессе стояния в очереди Борис задумался, а на какой из колонок по очереди придется заправляться ему. Но тут он понял, что определить номер бензоколонки ему не хватает знаний в математике. А сможете ли Вы решить поставленную задачу Требуется написать программу, которая по данным скорости заправки бензоколонками, количеству автомобилей и необходимому им бензина, определить номер бензоколонки для заправки Бориса. Для простоты задачи будем считать, что время подъезда, отъезда и расчетов за бензин равно нулю. При этом автомобили выбирают всегда для себя лучшую из свободных заправок, то есть ту на которой они потратят меньше времени на заправку.
Формат входных данных
В первой строке находятся два числа V1 и V2 – скорость заправки бензоколонок (скорость измеряется в литрах в секунду, 1 ≤ V1, V2 ≤ 50). Во второй строке располагается одно число N – количество автомобиле в очереди перед Борисом (1 ≤ N ≤ 10^5). В следующей строке располагается N чисел – a1, a2, … aN (количество литров бензина, необходимые автомобилем в очереди перед Борисом, 0 < ai ≤ 100).
Формат результата
Необходимо вывести номер бензоколонки, на которой согласно входным данным предстоит заправляться Борису.
Примеры
Входные данные Результат работы
1 2
3
1 2 4 1

1 2
3
1 2 3 2
Лучший ответ
Евгений Егорейченков Мыслитель (5195) 11 лет назад
Ну если запасы бензина на автозаправке бесконечны, то задача сводится к нахождению минимума времени на заправку на каждой бензоколонке, т. е. примерно так: 2 массива (либо другое, по желанию) для скоростей заправки бензоколонок и для литража всех авто в очереди for i=1 to кол-во бензоколонок; st=0 (суммарное время) for k=1 to кол-во авто в очереди, st=st+(кол-во литров k-го авто/скорость i-ой бензоколонки) ; if i=1min_tm (минимальное время) =st, nom=1 (номер бензоколонки) else if st
Остальные ответы
Миша Песков Гуру (3336) 11 лет назад
Ну и кто ж тебе за бесплатно будет составлять алгоритм для такой задачи, листочек и ручка, и приходишься по входным данным, анализируешь, переводишь в алгоритм, реализуешь :)
Да и задание, многа букафф
Похожие вопросы