排列組合的程式設計問題,一個排列組合的程式設計問題

時間 2022-02-07 03:30:08

1樓:匿名使用者

其實去取那五個不連續的數相對簡單點,然後在從全部數字當中去除取出的那幾個數字,剩下的就是我們要存到檔案的了。

現在,問題就變成了:1~14中取5個不連續的數字。簡單點,我們拿1~8取3個不連續的數來舉例子:

1 3 5

1 3 6

1 3 7

1 3 8

1 4 6

1 4 7

1 4 8

1 5 7

1 5 8

1 6 8

2 4 6

2 4 7

2 4 8

2 5 7

2 5 8

2 6 8

3 5 7

3 5 8

3 6 8

4 6 8

發現規律了嘛?程式如下^_^

**用vb script寫的,可以直接存為html檔案在瀏覽器裡執行。vb和vbs語法一致,只是,輸出部分要改為檔案操作,忘冰兄弟就自己辛苦點,獨立完成餘下的部分吧。加油!

2樓:

dim a,b,c,d,e as integerfor a=1 to 6

for b=a+2 to 8

for c=b+2 to 10

for d=c+2 to 12

for e=d+2 to 14

//此行得到a,b,c,d,e為5個不連號的值 得到其餘的就很容易了next

next

next

next

next

3樓:匿名使用者

open for intput #1

close #!

open for output #!

close

4樓:芭蕉洞主

不列出情況會不會?

如果會,想法列出所有。

如果不會,先看資料學。

5樓:禹希初

14的5次方才不到76萬,因此你可以列舉所有可能的組合

每次從1~14中取5個數,如果這五個數中沒有任何一對相差為1,則將餘下的9個數輸出。

用vb實現上述演算法,應該1~2秒鐘就可得到結果。

6樓:

7樓:匿名使用者

private sub jiecheng(n as integer)k=1for i=1 to n

k=k*i

next i

end sub

private command1_click()s1=jiecheng(14)

s2=jiecheng(9)

s3=jiecheng(5)

va=s1/s2/s3/s3

form1.print va'此處你也可以用其他方法輸出end sub

'好好努力學習

c語言程式設計求解一個排列組合問題。急!

8樓:匿名使用者

#include

#include

#include

void process(int *,int,int);

char *s;

int size;

void main(void)

int *p=new int[n];

s=new char[n+1];

s[0]='\0';

for(int i=0;i0)s[--size]='\0';

if(size>0)

int *p=new int[n];

s=new char[n+1];

s[0]='\0';

for(int i=0;i0)s[--size]='\0';

if(size>0)}}

if(count==0||count

if(isprint)printf("%s",s);

else return;}}}}

關於排列組合的一些演算法程式設計問題 30

9樓:匿名使用者

要是有樣例輸入,樣例輸出的話,可以給你**,現在我只能給你講思路。。

當我從中選出5個(或者更多<=10)的話,怎樣將所有的結果顯示出來?

明顯是用遞迴。用其中一個引數作為遞迴層數,或者稱之已經選擇個數。等於0或者等於選擇個數時候返回、輸出。

比如我選1,3,5,7,9。 如何程式設計 把10種結果c(5,3)全部顯示出來?

第一種方案是用全域性變數的陣列記錄,一維陣列二維陣列均可。

第二種方案是最為遞迴的傳遞引數,遞迴邊界的時候輸出。

另外如何才能剔除掉我選擇的結果?

剔除?沒理解你這句話的含義。初始化?還是什麼。如果遞迴,新的資料會覆蓋原來的資料啊~

所有資料都需要計算機輸入的。如何實現?

。。。。。。請給我樣例輸出和樣例輸入吧,不要讓我猜你給的題目的含義啊~~~~~

10樓:風雨稻香

我能想到的是,可以寫個三層迴圈,就可以把所有的結果找出來,並儲存在一個列表中,之後再把你的選擇的按相同方法找出來,在把兩者一一比較,相同的在一列表中刪除。什麼軟體都可以吧,matlab或者python或者其他都行

一個排列組合的問題

11樓:匿名使用者

有。諸如「

copyx在x之前」這樣的語bai句是一種限制條件。你只要在du全排列的基礎上zhi除以限制條件的排列就可以得到

dao你想要的答案。

比如abcdef中,你規定了3個字母的順序:a在b在c之前。那麼排列數就是6!/3!

很好理解:

在abcdef的全排列中,所有不是…a…b…c…這樣的情況都看成是和…a…b…c…重複的,你只要除以這個重複數就行了。而這個重複的個數就是這三個字母的全排列3!。

有多個限制條件的情況下,重複數相乘。比如你規定「a在b之前,c在d之前」,排列數就是6!/2!*2!

c語言程式設計的排列組合問題

12樓:岔路程式緣

程式有一些亂,實在不知道你要做什麼。

你要說排列組合吧,還有好多重複的,怎麼沒完沒了了呢?

請說得更仔細一些好嗎?

排列組合問題,求程式設計解決

13樓:匿名使用者

var digits = 5;

var base1   = [0,1,2];

var base2   = [0,1,2,3];

//解答①

var res1 = getresults(digits, base1);

console.log(res1);

//解答②

var res2 = getresults(digits, base2);

console.log(res2);

//獲取滿足條件的結果

function getresults(digits, basearr)

;var groups = getallgroups(digits, basearr);

groups.foreach(function(group));

if(sum == 6)

});res['count'] = res['groups'].length;

return res;

}//獲取所有組合

function getallgroups(digits, basearr)

{//儲存所有的排列組合

var groups = ;

//預設第一個組合為都選第一個選項, 如[0,0,0,0,0]

groups[0] = ;

for(var i=0; i

python程式設計中的一個排列組合問題。

14樓:

99天,每1個人可以分別和其餘99人配對。。

15樓:匿名使用者

我感覺你這個跟python就沒什麼關係,因為就是具體的數學問題了拿1個人來舉例(其實結果所有人都一樣)

編號1,可以與2-100個人進行組合。

但每次組合都會損失9個人,不管是隨機的還是有順序的,結果都是一樣。

就是說,頂多都只能堅持11天。

你可以使用各種組合,組合都可以不一樣,但按你這要求都是隻能組合12次。

12次之後就會不符合你的要求了。

16樓:小米飛貓

對演算法外行的蹲坑學習。。

17樓:匿名使用者

100*99/(10*9)=100

排列組合問題,一個排列組合問題

你好,這道題的答案就是十個沒有錯的,排列組合的那個公式沒有錯就是c 5.3 的也就是5 4 2 1 10。用列舉法計算也是十個的。具體的列舉如下 abc,abd,abe,acd,ace,ade,bcd,bce,bde,cde,這才是所有的組合,希望幫到你,望採納 林夢嫣 這是排列組合中的平均分組問題...

排列組合問題,排列組合問題?

8 7 6 21 種 總人數為481人,若分組要求隊伍數儘可能少,那麼481除去1以外,最小的因素就是13,也就是說,481人一共分成13組。張華和張明兩人需要在13個隊中選取一個隊伍,張華有13種選擇,張明也有13種選擇,則一共有13 13 169種選擇,其中張華和張明選至同一隊的情況一共有13種...

高中的排列組合問題求解,一個高中的排列組合問題求解

公羊冰冰勾氣 甲在第二位,乙在第三位,其餘三人有p3 6種組合甲在第二位,乙在第四位,其餘三人有p3 6種組合甲在第三位,乙在第二位,其餘三人有p3 6種組合甲在第三位,乙在第四位,其餘三人有p3 6種組合甲在第四位,乙在第二位,其餘三人有p3 6種組合甲在第四位,乙在第三位,其餘三人有p3 6種組...