C語言解決排列組合問題請高手指教

時間 2021-07-04 06:36:37

1樓:前縈懷

#include

/*陣列a[10]為固定值,一共10個數字,每個元素的值分別為1,1,1,2,2,4,5,3,4,2,

另有三個不相關的變數值2,3,4 ,這三個數字以任意的排列組合加到陣列a的某一個

或幾個元素中(可以全部加到a[1]上,也可以加到a[2],a[3],a[8]上 隨意加的),

這三個變數只能加一次,得到一個新的陣列b,當b組中有3個數值大於6時,輸出該陣列,

求出所有的滿足這個條件的陣列b。

*/int main()

;int b[10];

int i,j,k,t,count;

int x2=2,x3=3,x4=4;

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

if(count>=3)}}

}//3個數加到一個有10個元素的陣列中的所有可能

return 0;}

2樓:匿名使用者

這三個變數每個都有10種選擇,所有三重迴圈i, j, k,每個迴圈從0到9(當然,如果你要考慮可擴充套件性,比如4個變數,5個變數等等,也可以寫成遞迴),迴圈最內部把a[i],a[j],a[k]分別加上2,3,4,然後判斷結果是否滿足某個條件,滿足則列印,否則回滾以上操作(也即a[i],a[j],a[k]分別減去2,3,4),繼續下一次迴圈

請高手指教,高中數學排列組合問題求解釋?小球放進盒子裡,共兩個題目

3樓:匿名使用者

第一題中你重複了,假設你選出的是a球,最後它和b球同在1號箱子裡;若你選出的是b球,它和a球還有可能同時出現在1號箱子裡,這是一種情況,可是你算了2次,所以你最後的結果要除以2才對。

第二題中還是重複的問題,在5c1*4c1*3c3中,你先在5個球中選出a球,再在4個球中選出b球;也可以先在5個球中選出b球,再選出a球,這是相同的分法,可是卻被看成2種分法,所以要除以2。對於5c1*4c2*2c2也是同樣的情況,你先選出的a、b個球,剩下c、d個球,你也可以先選出c、d2個球,剩下a、b球,這是同一種情況.,所以需要除以2。

4樓:匿名使用者

假設哲個球是12345,當從5箇中選1時,其他按順序放在4個盒子裡,12就在一個盒子裡,當你選2時,其他四方個還按順序,那就是21在一個盒子裡有重複。

和上題一樣,第一次選1,第二次選2剩下3個一起,和第一次選2第二次選1剩下3個一起,重複,所以除2a2

5樓:蕭雪海

兩道題都是你的順序出現了問題。第一題你的答案是標準答案的2倍就是因為你沒除以2a2,所以第二題除以2a2你也沒懂。是這樣的,比如有兩個球,你把一號先放進去再放二號,和你把二號先放進去再放一號結果都是一樣的,但是次序不一樣,這就多了一種方法,要把這種方法除去,就除以2a2,也就是除以2,這樣你明白了嗎

某排列組合難題 跪求高人指教,C語言解決排列組合問題 請高手指教

總共14種組合 這純粹是一個列舉的問題 黃黃黃紅紅 黃黃黃紅白 黃黃黃白白 黃黃紅紅紅 黃黃紅紅白 黃黃紅白白 黃黃白白白 黃紅紅紅白 黃紅紅白白 黃紅白白白 黃白白白白 紅紅紅白白 紅紅白白白 紅白白白白 荒島 因為至少要取兩種顏色的球才能取5個,分兩種情況討論 1 5個球由兩種顏色組成 黃 紅 ...

數學高手請進,排列組合問題,高中數學排列組合問題,高手請進

設 n個班主任監考n個班,班主任不得監考自己班,共有監考方案 a n 種。n個班,n個老師,其中 n 1 個老師是 n 1 個班的班主任,班主任不得監考自己班。另一個班沒有班主任,另一個老師不是班主任,可以監考所有班。設共有監考方案 b n 種。易知 a n n 1 b n 1 n 2 而 b n ...

c語言如何實現任意數排列組合新手求助急

求排列組合沒有簡單方法。方法只有一個,列舉。有幾個位置需要列舉,就需要幾個迴圈。如果迴圈數量太多,可以用函式遞迴來列舉。例程 include int main 第一個位置int b 4 第二個位置int c 4 第三個位置int i,j,k for i 0 i 4 i for j 0 j 4 j f...