n=2 (つまり: {1,2}, {2,1}) から n=100 までの順列のみを生成する「プレフィックス反転ゲーム」を作成しようとしています。順列の先頭にあるものを置き換えます。
例えば、
- {2, 4, 1, 3} (最初の 2 つの要素が逆) -->
- {4, 2, 1, 3} (最初の 4 つの要素が逆) -->
- {2, 1, 3, 4} (最初の 2 つの要素が逆) -->
- {1, 2, 3, 4} (終了)。
したがって、この順列のスコアは「4」です。
私が問題を抱えている部分は、すべてをテストすることなく最高スコアの順列を見つけるために独自のアルゴリズムを作成して実装することです (非常に非効率的であるため)。このアルゴリズムの作成を手伝ってくれる人はいないかと思っていました。
「パンケーキの並べ替え」アルゴリズムなどのアルゴリズムを見てきましたが、これは私が望むものとは逆のようです。
お時間をいただきありがとうございました!