C, PHP, VB, .NET

Дневникът на Филип Петров


* Загадка с локомотив и вагони

Публикувано на 16 февруари 2011 в раздел Математика.

Влаково депо има линия с възможност за кръгово движение, както е показано на картинката по-долу. Това депо се използва за обучение на машинисти. Проблемът, който задават на кандидат-машинистите е да се премести вагон A на мястото на вагон B, както и вагон B на мястото на вагон А, като нито един от вагоните НЕ трябва да преминава през тунела. Освен това локомотивът трябва да бъде върнат на оригиналната си позиция. Опитайте се – ставате ли за машинисти?

П.С. Задачата я намерих случайно в сайта Yahoo answers. Не съм убеден къде е публикувана оригинално, но по картинката си личи, че най-вероятно е сканирана от книга.

 



14 коментара


  1. Комитата каза:

    Може ли локомотивът да бута или може само да дърпа ;-)

  2. @комитата – може и да дърпа и да бута без проблеми.

    @Ivan – аз установих опитно същото. Но остава най-неприятния момент в математиката – да се докаже, че няма решение :)

  3. Ivan каза:

    Струва ми се невъзможно. Размяната на А и В е лесна, но накрая локомотива винаги се пада откъм тунела, т.е. не може да се прибере в гаража без да разбута някой от двата вагона…
    В дадения отговор в Яхуу локомотива остава от към тунела, не се прибира.

  4. Нещо такова:
    Локомотивът отива отдясно на А (както е по картинка), закача го и го дърпа до долу, до оригиналното място на локомотива… После закача Б, мести го горе, минава през тунела (празен), закача А и го слага на мястото на Б…

  5. @Цветелин – Да, но така локомотивът продължава да НЕ е на оригиналното си място. Остава от страната на тунела.

  6. Комитата каза:

    Аз си мисля че условието е объркано. Че локомотивът не може да минава през тунела а вагоните могат. И че тунелът съответно е по-къс от вагона ;-)

  7. Условието си е наред. Задачата си е хубава – предполагам, че ще може да се реши с графи (в смисъл да се докаже, че няма решение).

  8. Комитата каза:

    Е аз мислех в посока, как да стане задача с решение ;-)

  9. Ivan каза:

    На мен почнаха да ми се въртят някакви Хамилтонови пътища и цикли из главата, но в тази област съм зле :)

  10. @Ivan – да, точно така трябва да се подходи.

  11. Росен каза:

    Ами ако могат да се закачат двата вагона един за друг – локомотивът отива при вагон А и го оставя на мястото, където на картинката в момента е самият локомотив, после отива от другата страна на вагон B, т.е. през тунела, и го добутва до А, закача двата вагона, като са подредени Локомотив-Вагон B – Вагон А. Оставя двата вагона на позицията, където трябва да бъде Вагон B (където на картинката е Вагон А) минава през тунела, връща се към вагоните, разкачва ги, закача Вагон А, като го дърпа, завива си към позицията, на която трябва да остави Локомотива, на заден ход оставя Вагон А, на позицията му и се връща на оригиналната позиция ;)

  12. JvruceR каза:

    Тоя локомотив е дефектен :Р Би трябвало да може да закача вагони и с предната си част, а така става лесно –
    тръгва напред и изтегля назад вагон В до горния ляв край (до вагон А), а после го бута до десния и го оставя.
    Връща назад и дърпа вагон А до вагон В, където обръща посоката и почва да го бута, но вече надолу до старата позиция на вагон В.
    Връща назад до старата позиция на вагон А, после отива напред (към горния десен ъгъл) и с предната си част закача изчакващият горе вдясно вагон В, тръгва назад и свива надолу, а после дава напред и свива наляво, където оставя вагон В в бившата локация на вагон А.
    Връща назад до горния десен ъгъл после тръгва надолу и прави завой към вече преместения вагон В. Остава да даде назад и да си застане на първоначалната позиция, а вагоните остават с разменени места.

  13. Мартин каза:

    ** Ще означа първоначалното място на локомотива с C.
    Локомотивът завива нагоре, завива надясно, дава назад и захваща А. После отива надолу, прави маневра и оставя А, където е C. Захваща вагон B и го тегли нагоре, завива надясно и го бута назад. Отива долу, захваща локомотив А, продължава напред, завива нагоре, дава назаден като завива към първоначалното място на B за да осъществи успешна размяна. Локомотивът е от правилната страна и продължава напред (ако държиш и да е с и правилната посока, то ще направи маневра).

  14. @Росен – „локомотивът отива при вагон А и го оставя на мястото, където на картинката в момента е самият локомотив“ – това не може да стане от изходна позиция. Локомотивът може да отиде до вагон А и да го дърпа назад. Отивайки до мястото където той е бил оригинално – той ще бъде от ляво на вагон А, т.е. не може да отиде при B – ще трябва да го прескочи.

    @JvruceR – това естествено е от картинката на коментар 10, а не оригиналната :)

    @Мартин – това също е към картинката на коментар 10. Уточнявайте!

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

Адресът на електронната поща няма да се публикува


*