2009-12-15 49 views
1

我尋找一個函數,獲得作爲輸入的排列若干X(假設15),位的數目d(4)和置換的數目(2) 。該函數的輸出將是所有的數字,這些數字是來自給定數字xd長度比特的比特的排列。C++ M位的數

對於給定的數字,(X = 15,d = 4和 = 2),我們得到6=\binom{4}{2}不同數量的組合。

我想知道,如果這樣那樣的功能已經存在於C++ STD或增強或等返回我的那些數字...

附: 如果你知道一個函數返回所有排列的數字,直到m

問候

+4

在標準C++中沒有這樣的函數。此外,我聞到功課... – DevSolar

+0

因此,除* ceil(log2(x))'以外,是否有* d *? –

+0

即使在Boost,我碰到。你必須爲它編寫你自己的自定義函數。 –

回答

1

我從@Gregory Pakosz評論看了一遍,我發現它不是那麼壞的方向發展的開始。我嘗試在我的程序中實現Bit Twiddling Hacks中的建議代碼,並在我的代碼中發現了一些錯誤。

謝謝