Автор: Админка

Крестьянину нужно перевезти через реку волка козу и капусту


Ответ на задачу про волка, козу и капусту.

Задача про волка, козу и капусту – одна из самых известных и популярных задач о переправе. В данной статье мы разберём решение данной задачи.

Формулировка.

Однажды крестьянину понадобилось перевезти через реку волка, козу и капусту. У крестьянина есть лодка, в которой может поместиться, кроме самого крестьянина, только одно существо или предмет — или волк, или коза, или капуста. Если крестьянин оставит без присмотра волка с козой, то волк съест козу; если крестьянин оставит без присмотра козу с капустой, коза съест капусту. Как крестьянину перевезти на другой берег всё своё имущество в целости и сохранности?

Решение.

Стоит сразу заметить, что коза взаимодействует сразу с двумя объектами: и волком, и капустой. Поэтому первой с собой стоит взять именно её.

  • Берём козу и перевозим её на другой берег, высаживаем.
  • Возвращаемся обратно, берём волка и перевозим его на другой берег.
  • Высаживаем волка, забираем козу и везём её обратно.
  • Высаживаем козу, забираем капусту и везём её на другой берег.
  • Высаживаем капусту и возвращаемся обратно, берём козу и везём её на другой берег
  • Высаживаем козу – все в сборе.

У этой задачи есть и другой не очень принципиально отличающееся решение: капусту и волка можно поменять местами. Основная идея – не оставлять козу с волком или капустой.

Похожие статьи

Решение проблемы с волком, козой и капустой (форум Programming Diversions на Coderanch)

Нет, Джим Инст, вам не нужно думать о том, что происходит, когда фермер переходит реку, или о том, что делает лодка; вы просто предполагаете, что лодка находится там, где находится фермер. На самом деле я получил 16 возможных состояний, пронумерованных от 0 до f, где самый старший бит (3-й бит = 8) представляет фермера, 2-й бит = 4 - это волк, 1-й бит = 2 - это гусь, а 0- -й бит (младший бит = 1) представляет собой зерно капусты или что-то еще.

Итак, f означает, что все четверо находятся на этой стороне реки, 0 означает, что все четыре пересеклись, 1 означает, что капуста одна на этой стороне реки, 2 означает, что гусь один на этой стороне реки и т. Д. можно было бы подумать, что это означает, что дополнение числа находится на другой стороне реки, поэтому 0 означает f на другой стороне. Тогда у вас будет инвариант thisSide + thatSide == 0xf.
По эту сторону реки есть три запрещенных штата: 3, 6, 7, где гусь ест капусту, лес - козу, или и то, и другое.Это означает, что на другой стороне есть три запрещенных состояния, 8 9 и c. Мы знаем, что 8 + 7 или 9 + 6 или c + 3 в сумме дают 0xf. Остается в общей сложности 10 разрешенных состояний. За каждым разрешенным состоянием могут следовать 1, 2 или 3 разрешенных состояния-преемника.

Правила таковы, что фермер должен переходить дорогу каждый раз в одиночку или в сопровождении одного предмета. Это эквивалентно побитовой операции XOR 8 9 a или c; если у вас есть переменные thisSide и thatSide, то одна и та же операция должна применяться к обеим сторонам, чтобы сохранить инвариант класса.Также вы удаляете из результатов любое из шести запрещенных состояний.
Вы можете вернуть состояния обратно на английский с помощью побитового И: private final int FARMER = 8, WOLF = 4, GOOSE = 2, CABBAGE = 1; . . . . если (состояние и ФЕРМЕР> 0) outputString + = "фермер"; если (состояние & WOLF> 0) outputString + = "волк"; и т. д.

Затем вы получаете дерево, начинающееся с f, и затем вы проводите поиск дерева, пока не найдете в нем 0. Для достижения 0 требуется ровно 7 операций, первая из которых - состояние ^ = FARMER + GOOSE;

*********************************************** ***************************
В LISP он читает что-то вроде этого, предполагая, что ваш алгоритм поиска по ширине и оператор -> уже поставлено: (defparameter * farmer * '((fwgcR wcRfg) (fwgRc wRfgc gRfwc) (fwcRg wcRfg wRfgc cRfwg) (fgcRw gRfwc cRfwg) (fgRwc gRfwc Rfwgc) (wcRfg fwcRg fwgcR) (gRfwc fgRwc fwgRc fwcRg) (cRfwg fwcRg fgcRw) (wRfgc fwgRc fwcRg) (Rfwgc fgRwc))) (defun farmer-lmg (состояние) (-> * фермер * штат)) (width-search 'fwgcR' Rfwgc # 'farmer-lmg) Аббревиатуры (очевидно) означают фермерскую волчью гусиную капусту и РЕКУ; те, кто до R, находятся на этой стороне, а те, что после R, находятся на этой стороне.Бит defun создает генератор легального хода (LMG).
*********************************************** **************************
С предоставленными нами утилитами LISP он работает, но, кажется, всегда дает мне один и тот же ответ . Я думаю, есть 4 возможных решения, но первая операция всегда заключается в том, что фермер переносит гуся, а четвертая операция всегда возвращает гуся.

[править] Незначительные орфографические исправления и значение lmg [/ править]
[30 ноября 2007 г .: Сообщение отредактировал: Кэмпбелл Ричи]

.

Волку, овце и капусте нужно перейти реку ...

С символической точки зрения, ни [W] olf & [S] heep, ни [S] heep & [C] abbage не могут остаться одни без [R] eferee (аватара решателя), чтобы они не убивали друг друга.

0. [WSC] R || []
1. [WC] || [S] R
2. [WC] R || [S]
3. [C] || [WS] R
4. [CS] R || [Вт]
5. [S] || [WC] R
6. [S] R || [WC]
7.[] || [WSC] R
, отправленный The Confessor в 8:02 13 ноября 2010 г. [11 избранных]

Там, откуда я родом, вы бы просто жонглировали ими, а это значит, что вы никогда не будете «носить» больше одного время.
отправлено Ди Кстроверт в 8:05 13 ноября 2010 г. [7 избранных] Ди Экстроверт : Там, откуда я родом, вы бы просто жонглировали ими, что означает, что вы никогда не будете «носить» более одного в время.

Мне нравится ваше мышление, но как вы гребете на лодке?
, опубликовано Slack-a-gogo в 8:07 13 ноября 2010 г.

Необычные логические головоломки никогда не признают реальности мощных транквилизаторов животных.
отправлено The Whelk в 8:10 13 ноября 2010 г. [36 избранных] Спасибо, Gator. Хорошо повеселиться.
, отправленный Ахавом в 8:10 13 ноября 2010 г. Это было потрясающе - так изобретательно! Мне нравится анимация, чистая и гладкая, но все же очень органичная. Преобразование Эшера в 3:18 - было действительно изящным.
отправлено Wolfdog в 8:13 13 ноября 2010 г. Также: все уже знают, как разгадывать загадку. Смотрите ссылку.
, опубликовано Wolfdog в 8:14 13 ноября 2010 г. [6 избранных] Натрите каждый предмет толстым слоем вазелина марки Vaseline ™.Мягкий, несъедобный вкус вазелина ™ предотвратит желание съесть потенциальную жертву. Моя семья выбирает вазелин ™, если у вас сухие локти, шелушащаяся кожа или головоломки-лодки.
отправлено Грегом Ногом в 8:14 13 ноября 2010 г. [15 избранных] riverIQGame.swf

Девочек нельзя оставлять с мужчиной, если рядом нет женщины.
Мальчиков нельзя оставлять с женщиной, если рядом нет мужчины.
Грабителя нельзя оставлять ни с кем, если рядом нет копа.
Только мужчина, женщина и полицейский могут управлять плотом.
отправлено rifflesby в 8:17 13 ноября 2010 г. [6 избранных]

Эта капуста меня бесит. Двое других в восторге от движения, подпрыгивания и всего остального. Вот этот парень арендовал лодку и переносит их через реку несколько раз ... включая экзистенциальное путешествие, балансирующее действие, перемещение неба и земли, чтобы все они благополучно доставили туда ... и ВСЕ ЕЩЕ капуста - в конце концов, они ' прошел - просто сидит неблагодарная зеленая какашка.
отправлено iamkimiam в 8:22 13 ноября 2010 г. [5 избранных] Мне нравится ваше мышление, но как вы гребете на лодке?

Я решил, что это мост, а не лодка.По моему опыту, больше людей пересекают реки по мосту, чем на лодке. Я не нажимал на ссылку, поэтому приношу свои извинения.
отправлено Ди Экстроверт в 8:22 13 ноября 2010 г.

Честно говоря, он блеет, что более чем выразительно, как обычно ожидаешь получить от капусты.
отправлено Wolfdog в 8:23 13 ноября 2010 г. Мне нравится, как это объясняется в «Офисе».

К сожалению, в ссылке отсутствует заглушка: когда приходит время поделиться решениями, Гарет поднимает руку: пролистывает несколько страниц заметок и начинает «Вопросы... "
отправлено рикошетом печенья в 8:28 13 ноября 2010 г.

Несколько приятных сюрпризов ... молодец!
отправлено HuronBob в 8:29 13 ноября 2010 г. Эта капуста бесит меня. .просто сидит неблагодарная зеленая какашка ..

В этой капусте можно заблудиться. Нет ничего плохого в капусте, в которой можно потеряться.
отправлено Ахавом в 8:32 13 ноября 2010 г. Меня всегда интересовало, зачем я перевозил дикого хищника через реку. Я мог представить себе, что мне нужно переместить мешок с зерном / капустой или гуся / овцу, но не лису / волка.В таком случае, почему в моей лодке есть место только для одного? В формате зерна / гуся / лисы, по крайней мере, объект выглядит примерно равным по весу / размеру, более или менее, но я несколько озадачен тем, как вообще можно попасть в лодку с лисой / волком.

Нет, вы не можете взять эту тарелку с фасолью, я все еще сортирую ее.
отправлено Фален в 8:43 13 ноября 2010 г. [2 избранных]

Хорошо, каково решение для ссылки rifflesby? Это сводит меня с ума!

Ключ к этому в том, что, хотя вы не можете оставить детей со взрослыми противоположного пола, вы можете оставить их в покое.Последствия довольно тревожные. Также беспокоит: когда вы их всех рассказываете, они делают что-то вроде фашистского приветствия / упражнений. В общем, загадка очень странная.

Но весело.
отправлено steambadger в 9:00 13 ноября 2010 г.

Лично я, если бы я оставил маленького ребенка одного на берегу реки, я бы побеспокоился, что он или она либо съест отравленную капусту, либо на меня нападет волки. Но это только я.
, отправлено steambadger в 9:01 13 ноября 2010 г. 1.Стричь овец.
2. Сделайте пряжу из стриженой шерсти.
3. Прикрепите капусту пряжей к макушке овцы, чтобы она не могла есть капусту.
отправлено Бернтом Панкреасом в 9:03 13 ноября 2010 г. [20 избранных] Я не могу собрать всех четырех детей вместе. Я могу получить двух мальчиков и одну девочку, но кто-то должен привести вторую девочку. Мужчина не может ее привести, потому что женщины не на другой стороне. Женщина не может привести ее, потому что мужчины не на другой стороне. Коп не может привести ее, потому что он оставит вора с мужчиной и женщиной.Я застрял!

Вот шаги, которые я предпринял, чтобы попасть сюда:

1. Полицейский и вор
2. Полицейский
3. Полицейский и мальчик
4. Мент и вор
5. Мужчина и мальчик
6. Man
7. Мужчина и женщина
8. Женщина
9. Женщина и девушка
10. Мужчина и женщина
, отправленный Уинсом Паркер Льюис в 9:16 13 ноября 2010 г.

Полицейский + преступник + дети с одной стороны - это ключ ...
отправлено tksh в 9:41 13 ноября, 2010 Вариант этой головоломки привел меня в ярость от профессора Лейтона.Уф.
отправлено кексами сундука в 9:46 13 ноября 2010 г. Подготовьте симуляцию так, чтобы «Энтерпрайз» мог одновременно победить все ромуланские военные корабли. При этом наслаждайтесь яблоком.
отправлено briank в 9:56 13 ноября 2010 г. [12 избранных] Настройте симуляцию так, чтобы «Энтерпрайз» мог одновременно победить все ромуланские военные корабли. При этом наслаждайтесь яблоком.

ERR_NOT_ROMULANS
отправлено device55 в 10:10 13 ноября 2010 г. [1 избранное]

Я сделал это! Используйте полицейского, чтобы начать переправлять вещи, когда вы дойдете до точки, где насилие над детьми останавливает все движения.
, отправленный EtzHadaat в 10:42 13 ноября 2010 г. 1. Переправьте овец.
2. Получите кислоту от друга овцы, Кудрявого Эрла.
3. QED.

Фантастическая находка.
отправлено Chairface в 11:06 13 ноября 2010 г.

Переместите их каждого в разные точки вдоль реки.
, опубликовано LogicalDash в 11:22 13 ноября 2010 г. Взлет и ядерная бомба с орбиты. Это единственный способ убедиться.
отправлено fuq в 12:39 13 ноября 2010 г. [1 фаворит] Я могу выкопать овцу и волка, желающих перейти реку.Почему бы и нет - они мобильные и это свободная страна. Но капуста? Что он будет делать, когда перейдет на другую сторону? Пустить новые корни ?? Создать семью?? Это , например, , предвзятое мнение об очень ограниченных передвижных возможностях, доступных уязвимым членам племени брассика. Тебе должно быть стыдно.
, отправленный MajorDundee в 12:57 13 ноября 2010 г. Привяжите веревку к капусте. Другой конец веревки привяжите к лодке. Бросьте капусту в воду. Посадите овцу и волка в лодку и гребите.

Река пересекается за один прием, и весь ил смывается с капусты, обеспечивая квашеную капусту без песка на обед!
отправлено ardgedee в 13:06 13 ноября 2010 г. [2 избранных]

В какой-то момент в далеком прошлом какой-то пастух придумал, что волка можно приручить селективным разведением и научить охранять овцу. Этот человек был гением.
отправлено humanfont в 13:35 13 ноября 2010 г. [3 избранных] Шаг 1: Перебросьте капусту через реку.Если промахнулись, скатертью дорога.

Овца может очень хотеть уйти, но я думаю, что волку просто нужно «уйти».
отправлено галадриэль в 13:44 13 ноября 2010 г.

В середине этого я явно начал принимать наркотики.
отправлено stoneweaver в 13:51 13 ноября 2010 г. Это хорошо. Когда я преподаю логику, я даю студентам бонусные головоломки с их заданиями, и эта загадка - одна из тех, которые я использую. Думаю в ключе ответа дам ссылку на это видео. (На самом деле это тоже ответ... этот парень в одном шаге от того, чтобы получить его прямо перед тем, как все начнёт сходить с ума.)
отправлено painquale в 13:52 13 ноября 2010 г. У меня был этот вопрос в интервью в Microsoft.

Мой ответ «Закапывать капусту и ждать, пока она не станет тухлым, а затем отравить ею волка» был признан неверным. Очень изобретательно, но, тем не менее, неверно. Тогда я решил «правильный путь» для них.

Они сделали дайте мне баллы за творчество, однако
отправлено spinifex23 в 14:04 13 ноября 2010 г.

Я не понимаю, почему просто взять овцу в первую очередь - не ответ.Волки - плотоядные животные, поэтому волк не будет есть капусту.
, отправленный Сарой К. в 14:44 13 ноября 2010 г. А что дальше, Сара?
, отправленный Wolfdog в 14:47 13 ноября 2010 г. (durrrr, я забыл, что вы также должны иметь дело с последствиями на другой стороне. Да ...)
отправлено Сарой К. в 14:48 на 13 ноября 2010 г. Сначала переправьте овец, вернитесь в одиночку, затем переправьте волка, вернитесь с овцами, затем переправьте овец с капустой. Выполнено.
, отправленный kenko в 15:00 13 ноября 2010 г. Замечательная находка! Мне нравится этот стиль анимации.
отправлено archagon в 16:40 13 ноября 2010 г. Необычные логические головоломки никогда не признают реальности мощных транквилизаторов животных.

Да, это должно сработать лучше, чем моя попытка усыпить капусту. Не знаю, о чем я думал.
отправлено martinrebas в 17:49 13 ноября 2010 г.

Решение «семейной» речной игры выглядит так:

1. Полицейский забирает узника. →
2. ← Полицейский возвращается.
3. Полицейский забирает Boy1. →
4. ← Мент возвращается с узником.
5. Папа забирает Boy2. →
6. ← Папа возвращается.
7. Мама и папа уходят. →
8. ← Мама возвращается.
9. Мент берет пленника. →
10. ← Папа возвращается.
11. Мама и папа уходят. →
12. ← Мама возвращается.
13. Мама берет Girl1. →
14. ← Полицейский возвращается с узником.
15. Коп забирает Girl2. →
16. ← Полицейский возвращается.
17. Мент берет пленника. →
18. Все делают странные приветствия.

И могу сказать, что у этой семьи есть проблемы.
отправлено fontor в 17:59 13 ноября 2010 г. [3 избранных]

Ненавижу, когда я чихаю и капуста выходит из носа.
, отправленный inmediasres в 19:02 13 ноября 2010 г. Я, должно быть, дурак - все, о чем я могу думать, это то, что если они начинают с одной стороны реки, почему они все еще не съели друг друга?
отправлено термитом пирамиды в 19:19 13 ноября 2010 г. Хорошо, каково решение ссылки Рифлсби? Это сводит меня с ума!

Это тоже сводило меня с ума, поэтому я написал программу для его решения.Вот график всех достижимых состояний. Это намного более линейно, чем я мог предположить.
отправлено qxntpqbbbqxl в 21:58 13 ноября 2010 г. [1 избранное]

Мне трудно соотнести это с реальной жизнью. Мне нужно увидеть это с Твити, Сильвестром, Бульдогом и Бабушкой. Или Ральф, Сэм и несколько овец. Может наковальня.
отправлено pracowity в 23:08 13 ноября 2010 г. Необычные логические головоломки никогда не признают реальности мощных транквилизаторов животных.

Послушайте, я с трудом решаю эту проблему как есть.Если я начну принимать транквилизаторы для животных, у меня не будет шоу.
отправлено Infinite Jest в 1:58 14 ноября 2010 г. [5 избранных]

Итак, туалет для животных находится на другой стороне реки, верно?
отправлено sour cream в 3:38 14 ноября 2010 г. Эй!

Я просто ПОМОГАЛ овцам в лодку.

И волк.

И, ммммм, капуста.
отправлено Samizdata в 14:22 14 ноября 2010 г.

Я знал, что будут проблемы, когда шляпа начнет двигаться...
2 Faves: Гребля с волком, волк предлагает грести ...

Спасибо Gator!
отправлено djrock3k в 14:44 14 ноября 2010 г.

Никто больше не обеспокоен тем, что этот человек потенциально представляет трех инвазивных видов на дальнем берегу реки ???
, отправленный DevilsAdvocate в 11:12 15 ноября 2010 г. [1 избранное]

«Старые забавные карты | Old Fangs Newer »

Эта тема была заархивирована и закрыта для новых комментариев

.Оптимизация

- Транспортировка лисы, козы и капусты - Stack Overflow

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Прослушивание: Загадка цели, волк и капуста. Загадка - переход через реку КОЗА, ВОЛК И КАПУСТА Фермер идет домой с рынка. Купил козу, капусту.

Презентация на тему: «Слушаем: Загадка, цель, волк и капуста. Загадка - переход через реку КОЗА, ВОЛК и КАПУСТА. Фермер идет домой с рынка. Он купил козу, капусту». - Стенограмма презентации:

1 Прослушивание: Загадка цели, волк и капуста

2

3 Загадка - переход через реку КОЗА, ВОЛК И КАПУСТА Фермер идет домой с рынка.Купил козу, капусту и волка. По дороге домой он должен перейти реку. Он переправится через реку на лодке. Лодка маленькая и больше чем одна вещь поместится. Проблема: он не может оставить козу одну с капустой (потому что коза ее съест). Он не может оставить козу наедине с волком (потому что волк съест козу). ВОПРОС: Как фермеру получить все на другом берегу реки?

4 СЛУШАТЬ Только завершенный сценарий загадки Проблемный вопрос

5 ШАГИ: Представьте упражнение - Загадки (Что такое загадки?) 1.Сс слушайте загадку полностью. 2.Ss прислушиваются к ключевым словам. Затем напишите их. (Ss может потребоваться прослушать 2 раза.) 3. Практикуйтесь / Научите словарный запас Ss. 4. Снова послушайте и попробуйте представить себе сцену / картинку. Как связаны ключевые слова. СС вырисовывают свои идеи. Отдельно или весь класс. 5.Проверьте понимание - Ss (несколько) отгадывают загадку. HW: Поговорите со своими друзьями и попытайтесь найти ответ. Объясните завтра на английском (возможно, дополнительные баллы) Задание - Загадка Это хорошее упражнение на слушание.Ss = Студенты

6 Методы и теория из учебника Сноу. Групповая работа, ориентированная на учащихся; 3-4 ученика, из-за большого класса. Работать в команде; работать вместе. Учитель НЕ дает ответы. Прослушивание. После прослушивания  должно быть какое-то действие. Оценка и презентация. Покажите понимание, нарисовав время, чтобы показать конечный продукт.


.

Смотрите также


Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.



Понравился рецепт? Подпишись на RSS! Подписаться!