題目1204 農夫 羊 菜和狼的故事

2021-06-23 01:34:31 字數 1297 閱讀 8240

題目描述:有乙個農夫帶乙隻羊、一筐菜和乙隻狼過河.

果沒有農夫看管,則狼要吃羊,羊要吃菜.

但是船很小,只夠農夫帶一樣東西過河。

問農夫該如何解此難題?

輸入:題目沒有任何輸入。

輸出:題目可能有種解決方法,求出步驟最少的解決方法,

按順序輸出農夫想把羊、菜、狼全部運過河需要哪幾個步驟。

如果需要將羊帶過河去則輸出「sheep_go」。

如果需要將羊帶回來則輸出「sheep_come」。

如果需要將菜帶過河去則輸出「vegetable_go」。

如果需要將菜帶回來則輸出「vegetable_come」。

如果需要將狼帶過河去則輸出「wolf_go」。

如果需要將狼帶回來則輸出「wolf_come」。

如果需要空手返回則輸出「nothing_come」。

如果需要空手過河則輸出「nothing_go」。

每輸出一種方案,輸出一行「succeed」。

樣例輸入:

樣例輸出:

題目可能有多組解決方法,每種方法輸出後要再空一行。

一種方法中的多句話,每句話佔一行。

2023年華中科技大學計算機保研機試真題

#includevoid create(void);

int safe(int,int j,int m,int n);

int islink(int ,int);

void dfs(int);

void out(void);

struct problem;

int visit[16];

int max=0;

int pa=0;

struct problem p[16];

int link[16][16];

int path[16];

int main()

void create()

}max--;

for(i=0;i<=max;i++)

for(j=0;j<=max;j++)

}int safe(int i,int j,int m,int n)

int islink(int i,int j)

void dfs(int n)

for(i=0;i<=max;i++) }}

void out(){

int i;

for(i=1;i

第 3 3 課 狼 羊 菜和農夫過河問題

農夫需要把狼 羊 菜和自己運到河對岸去 不知道為啥要運狼,別問我 只有農夫能夠划船,而且船比較小,除農夫之外每次只能運一種東西,還有乙個棘手的問題,就是如果沒有農夫看著,羊會偷吃菜,狼會吃羊。請考慮一種方法,讓農夫能夠安全地安排這些東西和他自己過河。這是乙個很簡單的問題,在狼 羊和菜這個食物鏈上,關...

練習程式 演算法系列14 狼 羊 菜和農夫過河問題

參考2 函式物件 關於仿函式 函式物件 ptr fun 參考3 bind2nd使用 include include include include using namespace std const int action count 8 一共有8種動作 int dfs deep 0 int resu...

最小割 狼和羊的故事

狼愛上羊啊愛的瘋狂,誰讓他們真愛了一場 狼愛上羊啊並不荒唐,他們說有愛就有方向 orez聽到這首歌,心想 狼和羊如此和諧,為什麼不嘗試羊狼合養呢?說幹就幹!orez的羊狼圈可以看作乙個n m個矩陣格仔,這個矩陣的邊緣已經裝上了籬笆。可是drake很快發現狼再怎麼也是狼,它們總是對羊垂涎三尺,那首歌只...