藍橋杯第七屆第5題

2021-08-16 23:16:52 字數 1315 閱讀 3661

還是用到dfs的做法:

深度優先搜尋演算法(英語:depth-first-search

,簡稱dfs)是一種用於遍歷或搜尋樹或圖的演算法。沿著樹的深度遍歷樹的節點,盡可能深的搜尋樹的分支。當節點v的所在邊都己被探尋過,搜尋將回溯到發現節點v的那條邊的起始節點。這一過程一直進行到已發現從源節點可達的所有節點為止。如果還存在未被發現的節點,則選擇其中乙個作為源節點並重複以上過程,整個程序反覆進行直到所有節點都被訪問為止。屬於盲目搜尋。

深度優先搜尋是圖論中的經典演算法,利用深度優先搜尋演算法可以產生目標圖的相應拓撲排序表,利用拓撲排序表可以方便的解決很多相關的圖論問題,如最大路徑問題等等。

1 

void

dfs()

2 7

8 // 嘗試每乙個可走方向(右下左上)

9 for(i

=0;i

i++)15

}16

}

package com.huat.lanqiao7;

/** *

* @author yanzz

* @功能說明: 抽籤

* x星球要派出乙個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行)

* 仔細閱讀**,填寫劃線部分缺少的內容。

* * 注意:不要填寫任何已有內容或說明性文字。

* * @version:

*/public class no_5

string s2 = s;

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

} public static void main(string args) ;

f(a,0,5,"");

}}

第七屆藍橋杯題解

純 無解析,第七題和第十題不會答案1 171700 2.26 3.29 4.swap a,p,j 5.f a,k 1,m i,b 6.1580 第一題 煤球數目 有一堆煤球,堆成三角稜錐形。具體 第一層放1個,第二層3個 排列成三角形 第三層6個 排列成三角形 第四層10個 排列成三角形 如果一共有...

第七屆藍橋杯第三題

這道題採用dfs直接方式,產生1 9的全排列,在計算sum是否 10 另外如果是用c 可以用到庫函式next permutation 函式 該函式標頭檔案 include可以參考全排列函式 package com.huat.lanqiao7 author yanzz 功能說明 湊算式 b def a...

藍橋杯第七屆A題 煤球數目

題目描述 有一堆煤球,堆成三角稜錐形。具體 第一層放1個,第二層3個 排列成三角形 第三層6個 排列成三角形 第四層10個 排列成三角形 如果一共有100層,共有多少個煤球?請填表示煤球總數目的數字。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。思路本題屬於規律題,這裡求的是0 ...