Стандартная библиотека C++ (2015)

Я как раз это и пытался спросить выше: “Имею ввиду, что после проезда перекрестка Object может оказаться на одной из двух дорог Но когда мы проезжаем перекресток нам требуется присвоить ему id дороги на которой он находится. И после этого определять событие 1. И если неправильно присвоить, то окажется, что событие один определить нельзя(будто он свернул на другую дорогу)”.

Только у меня обратная ситуация описана, присвоили id другой дороги, а он проехал прямо

В условии задачи не сказано, что Вы должны присвоить. Вы должны быть способны анализировать и событие 1 и событие 2. Если единственное поле id у объекта не дает Вам этого сделать, то как надо поступить? Правильно, добавить еще одно поле id для перекрестков.

Хорошо, тогда как быть с Request 4 если вдруг при последней отправке он оказался на перекрестке? Отправлять id двух дорог подряд в строку, если да то в каком порядке?

Меня вообще немного смущает порядок событий и тд. чеккер надо делать очень гибким…

Хотите помочь его сделать? :wink:

Я запутался. Студенты подскажите завтра же практика, а не лекция?

Кажись практика

Читайте выше: выводите любой. Можно даже оба, в любом порядке. Главное - в одной строке и валидные id-шники.

Если происходят в одно время, выводите в любом порядке. Важна только хронологическая последовательность и чтобы все произошедшие события были зафиксированы.

На ejudge залит валидный sample. (тест 1)

Его пока не видно, но вот он: sample.zip (430 Байт)

Небольшое замечание: в outpute можно увидеть, что, когда пешеход оказался на перекрестке двух автомобильных дорог, было зафиксировано только одно событие и указана только одна дорога. На одной из лекций/занятий была договоренность, выводить в таком случае наименший id. Либо останется так, либо можно будет выводить любой id-шник, либо нужно фиксировать два события. В любом случае, это меньшая из проблем этой задачи :slight_smile: Также на запрос о местоположении, выведены два id дороги (перекресток) - вообще, это информация только для чекера. В решениях можно выводить любой из двух (либо оба).

Для подготовки тестов: input НЕ должен заканчиваться пустой строкой/пробельными символами. Это связано с тем, что точное кол-во запросов не указывается и чтение должно быть до eof. В корректных output’ах, на запрос 4, если объект на перекрестке, указывайте через пробел оба id’шника. В любом порядке.

Вопрос следующий, про Request 2:

  1. если самых загруженных дорог нет,т.е все типа WALK (У них нет скорости), то что мы должны выгрузить.

  2. Или если например ездили только по двум дорогам, то выгрузить 2-е дороги, а не 5 или все же пытаться искать оставшиеся три. И тогда опять упираемся в пункт 1(Дорог по которым могут ехать машины может не хватить).

Можно, например, выводить минимум из 5 и того, что имеется. (если ни одной - пустую строку). Чекер в нынешнем состоянии, это съест :wink:

Хотя можно просто считать такие тесты некорректными.

Незагруженная дорога тоже является загруженной :slight_smile: Если информации о скоростях на ней нет, то можно вполне считать, что там скорость может быть максимальной (или какой угодно).

Я Вас очень прощу, не выносить решения за меня.

@Aleksandr_Volohov Итак, любая дорога, по которой могут ездить автомобили имеет среднюю скорость 0 км/ч. Если дорог меньше 5, то вывести все, которые есть.

Тогда вопрос о том, что делать, если при вычислении времени в пути, мы столкнемся с нулевой скоростью, становится еще более актуальным. (+ порождаем два варианта: рассчетный нуль и нуль, связанный с неизвестность).

Я просто исходил из того, что, коль скорость неизвестна, она может быть неограничена. Не знаю, насколько это логично и правильно, но неизвестность не должна влечь невозможность. А так будет: “Про эту дорогу ничего неизвестно, так что, система думает, Вы никогда по ней не доберетесь до пункта назначения.”

И да: со стороны реализации тут все совершенно все равно.

По моему, это лучше чем считать, что Вы доберетесь до пункта назначения сколь угодно быстро (неограниченная скорость).

Возможно, но скорость у нас ограничена соответствующим параметром дороги ) Запрос ведь только на автомобильные/смешанные распространяется.

Наверное, я не правильно написал: Раз о дороге ничего не известно, то стоит считать ее свободной.

Если не ошибаюсь, то всякие яндекс.пробки примерно так и делают. Они же сводку по перемещению мобильных устройств формируют: в ночное время, когда очень не по многим дорогам что-то перемещается, они отображают все дороги свободными.

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

Пусть средняя скорость на свободной дороге будет равно лимиту по этой дороге.

Роман Борисович, для теста нужен только input или output тоже?

Только входной файл. Выходной мы будем генерить.

Поправка: если файл маленький, то напишите руками и выходной тоже. Проще будет подставить в ejudge.

Я лишь излагал наиболее подходящие варианты, и, вроде бы, нигде не утверждал, что именно так надо. Постараюсь поаккуратнее.

Но вопрос остается и он важный (все-таки сдавать уже надо задачу): Если, при рассчете времени, намечается деление на 0, какую красивую фразу (красивое число) выводить?

Я пытаюсь в свободное время делать маленькие, но всесторонние тесты, а для ans файла все-таки нужно определится. Потому могу бежать впереди паровоза, додумывая недосказанное, надеясь, что так будет лучше всего. Собственно, это и ведет к тому, что было выше.

Роман Борисович, возник вопрос, в файле у нас данные от приложений и запросы упорядочены по времени?