サイズ X のセットのサイズ Y のすべての順列を計算したいと思います。つまり、(1,2,3) があり、サイズ 2、3P2 のすべての順列が必要な場合、(1,2) になります ( 1,3) (2,1) (2,3) (3,1) (3,2)。
GSL と C++ STL はどちらも、私が見ることができる xPx しか提供していません。誰かがこれを行うことができる C/C++ ライブラリを教えてくれますか、または高速でメモリ効率の良いアルゴリズムを詳しく説明してくれますか?
非常に短い暗号文を解こうとしています。私は 2 つの文字を理解し、ブルート フォース アタックを行うことにしました。私は「ouglg ouyakl」を持っており、すべての順列を非常に優れた辞書と照合しています。2 文字を削除したので、24P7 または 1,744,364,160 の可能性がありますが、それほど悪くはありません。私は現在 Perl プログラムを実行しているので、これはプログラミング時間 + 実行時間の合計効率の興味深いテストになるでしょう。:)
(いいえ、暗号文の答えだけが欲しいわけではありません。)