實驗一 遞迴與分治

2022-08-24 11:30:17 字數 1181 閱讀 9332

1、由0到

4五個數字,組成

5位數,每個數字用一次,但十位和百位不能為

3(當然萬位不能為

0),輸出所有可能的五位數。

#includeusing namespace std;

intmain()}}

}}

cout

<}

2、程式設計求和:s=a+aa+aaa+aaaa+ ...

+aaaa...

aaa(n個)

,其中a為1

~9a ,

以後每一項由前一項乘以

10加上

a遞推得到,然後求和。

#includeusing namespace std;

intmain()

cout

cout

<<"="}

3、編寫程式求500 以內的勾股弦數,即滿足

c2=b2+a2

的3個數,要求

b>a

。將所有符合要求的組合存入文字檔案中,每個組合佔一行。

#includeusing namespace std;

intmain()

}

4、 有兩隊選手每隊

5人進行一對一的比賽,甲隊為a、

b、c、

d、e,乙隊為j、

k、l、

m、n,經過抽籤決定比賽對手名單。規定a不和

j比賽, m不和

d及e比賽。列出所有可能的比賽名單。

0號位,b在

1號位,依次排列,最後e在

4號位;然後乙隊排對應的對手,用迴圈變數j、

k、l、

m、n分別對應

0號位的選擇、

1號位的選擇、依次類推,

直到到4號位的選擇,每一層迴圈應剔除上一輪已選過的選手,和指定不與比賽的對手。用變數

i統計不同情況數。

#includevoid

main()

;

char st2[5]=;

int i=0,j,k,l,m,n;

cout

<<"列出所有比賽情況:"

}}

cout

<<"共有"}

演算法實驗三 遞迴與分治

一 實驗目的 理解遞迴演算法的思想和遞迴程式的執行過程,並能熟練編寫遞迴程式。掌握分治演算法的思想,對給定的問題能設計出分治演算法予以解決。二 實驗環境 vc6.0 三 實驗內容 無窮數列1,1,2,3,5,8,13,21,34,55,稱為fibonacci數列。它可以遞迴地定義為 第n個fibon...

演算法實驗一 遞迴分治 快速排序

時限 1000ms 記憶體限制 10000k 總時限 3000ms 描述給定乙個數列,用快速排序演算法把它排成公升序。輸入第一行是乙個整數n n不大於10000 表示要排序的數的個數 下面一行是用空格隔開的n個整數。輸出輸出排序後的數列,每個數字佔一行。輸入樣例 53 2 1 4 5 輸出樣例12 ...

演算法實驗一 (遞迴分治) 快速排序

時限 1000ms 記憶體限制 10000k 總時限 3000ms 描述給定乙個數列,用快速排序演算法把它排成公升序。輸入第一行是乙個整數n n不大於10000 表示要排序的數的個數 下面一行是用空格隔開的n個整數。輸出輸出排序後的數列,每個數字佔一行。輸入樣例 53 2 1 4 5 輸出樣例12 ...