青蛙過河問題

2021-10-10 23:20:14 字數 872 閱讀 8389

青蛙過河問題

一條小溪尺寸不大,青蛙可以從左岸跳到右岸,在左岸有一石柱l,面積只容得下乙隻青蛙落腳,同樣右岸也有一石柱r,面積也只容得下乙隻青蛙落腳。有一隊青蛙從尺寸上乙個比乙個小。我們將青蛙從小到大,用1,2,…,n編號。規定初始時這隊青蛙只能趴在左岸的石頭l上,按編號乙個落乙個,小的落在大的上面。不允許大的在小的上面。在小溪中有s個石柱,有y片荷葉,規定溪中的柱子上允許乙隻青蛙落腳,如有多隻同樣要求按編號乙個落乙個,大的在下,小的在上,而且必須編號相鄰。對於荷葉只允許乙隻青蛙落腳,不允許多隻在其上。對於右岸的石柱r,與左岸的石柱l一樣允許多個青蛙落腳,但須乙個落乙個,小的在上,大的在下,且編號相鄰。當青蛙從左岸的l上跳走後就不允許再跳回來;同樣,從左岸l上跳至右岸r,或從溪中荷葉或溪中石柱跳至右岸r上的青蛙也不允許再離開。問在已知溪中有s根石柱和y片荷葉的情況下,最多能跳過多少只青蛙?

意思是:先讓一半的青蛙利用y片荷葉和s 1根石柱,落在河中剩下的那根石柱上;然後讓另一半的青蛙利用y片荷葉和s -1根石柱,落在右岸的r上面;最後再讓先前的一半青蛙, 利用y片荷葉和s-1根石柱,落在右岸的r上面。

遞迴邊界: tiao(0, y)=y+1

```

c#include

<

stdio.h

>

inttiao

(ints,

inty)/

/s石柱y荷葉

intmain()

return0;

}

青蛙過河問題

青蛙過河是乙個非常有趣的智力遊戲,其大意如下 一條河之間有若干個石塊間隔,有兩隊青蛙在過河,每隊有3 只青蛙,如 圖 10 19所示。這些 青蛙只能向前移動,不能向後移動,且一次只能有乙隻青蛙向前移動。在移動過程中,育蛙可以向 前面的空位中移動,不可一次跳過兩個位置,但是可以跳過對方乙隻青蛙進入前面...

青蛙過河問題

一條小溪尺寸不大,青蛙可以從左岸跳到右岸,在左岸有一石柱l,面積只容得下乙隻青蛙落腳,同樣右岸也有一石柱r,面積也只容得下乙隻青蛙落腳。有一隊青蛙從尺寸上乙個比乙個小。我們將青蛙從小到大,用1,2,n編號。規定初始時這隊青蛙只能趴在左岸的石頭l上,按編號乙個落乙個,小的落在大的上面。不允許大的在小的...

N 青蛙過河

description 1 一條小溪尺寸不大,青蛙可以從左岸跳到右岸,在左岸有一石柱l,石柱l面積只容得下乙隻青蛙落腳,同樣右岸也有一石柱r,石柱r面積也只容得下乙隻青蛙落腳。2 有一隊青蛙從小到大編號 1,2,n。3 初始時 青蛙只能趴在左岸的石頭 l 上,按編號乙個落乙個,小的落在大的上面 不允...