藍橋杯 遞迴問題

2021-09-12 14:40:14 字數 1871 閱讀 2957

深入遞推,逐級回退

遞迴問題    深搜dfs   在有條件的情況下試探各種情況  找出口 

遞迴的終止條件

遞迴函式引數邊界值的界定

/*思想

1.src上的n-1個盤子移到medium

2.src剩下的乙個最大的盤子移到dest

3.medium上的n-1個盤子移到dest

*///把src最上面的乙個盤子移到dest

void move(char src, char dest)

n:剩下的台階數 為0時停止遞迴

step:走過的步數 判斷是否為偶數(題目要求)

這個二叉樹的每個葉子節點都是一種情況 

酒壺中有酒2鬥,逢店加一倍,遇花喝一斗。 

他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。

李白遇到店和花的次序,共有多少種可能?

遞迴函式引數邊界值的界定

for(i=0; ix星球要派出乙個5人組成的觀察團前往w星。

其中:a國最多可以派出4人。

b國最多可以派出2人。

c國最多可以派出2人。

....

那麼最終派往w星的觀察團會有多少種國別的不同組合呢?

下面的程式解決了這個問題。

陣列a 中既是每個國家可以派出的最多的名額。

程式執行結果為:

defff

cefff

cdfff

cdeff

ccfff

cceff

ccdff

ccdef

befff

bdfff

bdeff

bcfff

bceff

bcdff

bcdef

....

(以下省略,總共101行)

程式填空的遞迴題,注意引數的含義,變化方向 

#include #define n 6

#define m 5

#define buf 1024

/*k是a的下標 k變大

m代表人數,初值為5 m變小

b緩衝字串

*/void f(int a, int k, int m, char b)

for(i=0; i<=a[k]; i++)

}int main()

; //a 每個國家可以派出的最多的名額 n 6個國家數

char b[buf]; //b 觀察團人員組成 m 5人觀察團

f(a,0,m,b);

return 0;

}

藍橋杯 遞迴 2 24

回形取數 藍橋杯 基礎練習 問題描述 回形取數就是沿矩陣的邊取數,若當前方向上無數可取或已經取過,則左轉90度。一開始位於矩陣左上角,方向向下。輸入格式 輸入第一行是兩個不超過200的正整數m,n,表示矩陣的行和列。接下來m行每行n個整數,表示這個矩陣。輸出格式 輸出只有一行,共mn個數,為輸入矩陣...

藍橋杯 2017初賽 正則問題 遞迴

考慮一種簡單的正規表示式 只由 x 組成的正規表示式。小明想求出這個正規表示式能接受的最長字串的長度。例如 xx x x xx xx 能接受的最長字串是 長度是6 輸入乙個由x 組成的正規表示式。輸入長度不超過100,保證合法。輸出這個正規表示式能接受的最長字串的長度。樣例輸入 xx x x xx ...

藍橋杯 密碼脫落問題 遞迴思路

密碼脫落 x星球的考古學家發現了一批古代留下來的密碼。這些密碼是由a b c d 四種植物的種子串成的序列。仔細分析發現,這些密碼串當初應該是前後對稱的 也就是我們說的映象串 由於年代久遠,其中許多種子脫落了,因而可能會失去映象的特徵。你的任務是 給定乙個現在看到的密碼串,計算一下從當初的狀態,它要...