trains

В эти выходные я был на Ciklum Java Saturday, который прошёл в Минске. И там последние выступающие задали всем задачку, про поезда. Которую, с небольшими усложениями и подсказками, я предлгаю решить, кому-нибудь, кто попадёт на эту запись.

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

  • L – двигатся на шаг влево
  • R – двигатся в право
  • If(state) … — если это станция, то выполнить команду
  • goto <N> – переместить выполнение на указанный номер <N> строчки кода

Написать такую программу, которая при одновременной загрузке в процессоры двух поездов, позволила бы столкнуть их между собой.

Если вы решили задачу и уверенны, что решение правильное и оно занимает у вас 6-ть строчек кода, то есть ещё решение, которое занимает 5-ть строчек, но более медленное. Слабо угадать какое?

Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс