Ю 4.37

Задача

Автостоп-2. Из пункта А в пункт В, между которыми [latex]s[/latex] км, выехал велосипедист с постоянной скоростью [latex]v_{0}[/latex] км/ч. Навстречу ему — из пункта В — другой путешественник решил добраться «автостопом» — на разных видах попутного транспорта. Перед каждым участком он [latex]\tau _{i}[/latex] минут «голосует», ожидая попутного транспорта, затем движется [latex]t _{i}[/latex]  часов со скоростью [latex]v _{i}[/latex] км/час ( величины [latex]\tau _{i}, t _{i}, v _{i}, i=1,2,\ldots,n[/latex]  заданы в соответствующих массивах). Через какое время после старта и на каком расстоянии от пункта А путники встретятся?

Тесты

s [latex]v_{0}[/latex] n [latex]\tau _{i}[/latex] [latex]t _{i}[/latex] [latex]v _{i}[/latex] place, км  time, ч Комментарий
100.0 30.0  1 60.0 1.0 40.0 60.0 2.0 Пройден
100.0 10.0 1 0.0 1.0 40.0 Путники не доехали до места встречи Не пройден
130.0 15.0 2 0.0 3.0 1.0 2.6 40.0 33.3 2.587267 38.809006 Пройден

 

Код программы

Вначале программы вводим во входной поток и считываем данные. Далее, в цикле, проверяем несколько условий, таких как:

  1. Пока второй ждал — первый уже проехал весь путь.
  2. Если после i-ого этапа (т.е. после ожидания транспортного средства, поездки на нем) сумма пройденного пути второго и первого путника больше, чем весь путь.

Далее высчитываем само место и время встречи.
В конце программы, за циклом, проверяем каков общий пройденный путь двух путников и если он меньше всего пути, то выводим сообщение, что они так и не встретились.

Код на Java

 

Related Images:

3 thoughts on “Ю 4.37

  1. Вопрос номер 1: почему Вы время wait делите на 60, а время move не делите? Они же в одинаковых единицах — минутах.
    Вопрос номер 2: я понимаю, что в пути бывает всякое, но как это «Путники не доехали до места встречи»?

  2. У Вас довольно сложная программа и скупое пояснение — много довольно неочевидных моментов (даже, как видите, строчку wait[i] /= 60; желательно пояснить). В частности у Вас большое количество промежуточных переменных: delta, timee, ss, dist. Что есть что, малопонятно. Поэтому пока даже не буду следить за Вашей общей логикой.

    Насчет «Путники не доехали до места встречи» — такое, наверное, возможно только если скорость велосипедиста нулевая, а автостопщику не получится доехать до пункта назначения. Ведь если скорость велосипедиста ненулевая, то он встретится даже с застрявшим навсегда автостопщиком — разве не так?

    Кроме того, для такой сложной задачи три теста кажется маловато, разве нет?

Добавить комментарий