作者pziyout (pziyout)
看板Programming
標題Re: [問題] 數字組合可能性
時間Mon Jun 3 09:33:39 2013
※ 引述《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 ;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.25.21
1F:推 tails32100:XD 118.170.20.128 06/03 14:48
2F:→ suhorng:但是是特解 118.166.49.229 06/03 21:00