人狼羊菜問題

2021-10-20 22:24:58 字數 597 閱讀 2374

引用自張銘老師的《資料結構與演算法三》公開課

「人狼羊菜」乘船過河

人 狼 菜 羊 沒有過河位置0, 已經過河位置1。

0 0 0 0 (初始值)

1 0 0 1

…1 1 1 1 (全部過河)

#include

#include

#include

bool

famer

(int status)

bool

wolf

(int status)

bool

cabbage

(int status)

bool

goat

(int status)

bool

safe

(int status)

intmain()

}}}if

(route[15]

!=-1)

}else

std::cout <<

"no solution."

<< std::endl;

return0;

}

C 演算法 狼羊菜過河問題

namespace 狼羊菜過河問題 物件陣列 static string start new string 開始情況 static string end new string 結束情況 static int cnt objects.length 幾種物件 static int count 0 解決方...

用Dijkstra演算法解決狼羊菜渡河問題

乙隻狼,乙隻羊和一筐白菜在河的一岸,乙個擺渡人想把它們都渡到河的另一岸去。但是由於他的船很小,每次只能帶走它們之中的一樣。由於明顯的原因,狼和羊或者羊和白菜在一起需要人看守。問擺渡人怎麼樣把它們渡過河?用四維陣列 a,b,c,d a,b,c,d a,b,c d 表示狼,羊,菜,擺渡人的位置狀態,其中...

演算法謎題系列1 狼羊人問題

有乙個人,乙隻羊,乙隻狼,一捆菜 狼可以吃羊,羊可以吃菜,只有人在的情況,才避免吃的情況 準備過河。有一條船隻能載兩樣東西過河 人也算是一樣東西,只有人才會往返坐船,其它不會 如何過才會全部安全過河 沒有吃的現象 分析 可用自動機方法來解決,乙個狀態可形式化表示為,即people sheep wol...