Re: [問題] 數字組合可能性

作者: pziyout (pziyout)   2013-06-03 09:33:39
※ 引述《hangchu (無瑕心靈的永恆燦爛陽光)》之銘言:
: 請問各位大大
: 現在小弟我有一個問題想不出來
: 假設有某一組數字,要想出這組數字的「所有組合的可能性」,包括單一數字
: 不曉得程式要怎麼寫
: 例如 1、2、3、4
: 可能性有:
: 1
: 1 2
: 1 2 3
: 1 2 3 4
: 1 3
: 1 3 4
: 1 4
: 2
: 2 3
: 2 3 4
: 2 4
: 3
: 3 4
: 4
依照 tails32100 的說法撰寫,程式很短:
m = 5 ; // 假設 5 個數字
n = ( 1 << m ) - 1 ; // 集合個數
for ( i = 1 ; i <= n ; ++i ) {
cout << i << " : " ;
for ( j = 0 ; j < m ; ++j ) {
if ( i & ( 1 << j ) ) cout << ( j+1 ) << " " ;
}
cout << endl ;
}

Links booklink

Contact Us: admin [ a t ] ucptt.com