重複の可能性:
特定の条件に従って特定の配列のすべての要素をマークするための最小ステップ数を見つける方法に関するヒントはありますか?
長さ n の配列が提供されているとします。さらに、サブシーケンスの長さ k も提供されます。
つまり、配列が [1,2,3,5,5]........ (ここでは n は 5) で、サブシーケンスの長さが 3.. (長さ 3 の任意のサブシーケンスを取得できることを意味します) とします。
上記の例のサブシーケンスの例は、{1,2,3} または {2,3,5} または {3,5,5} です。
ここでの「ステップ」は、配列から長さ k のサブシーケンスを取得するように定義されています。取得すると、サブシーケンスの最小配列要素のフラグを 1 に設定できます。配列が{1,2,3,5,5}、つまりnが5で、「k」値が3であるとします。その後、次の選択を行うことができます{1,2,3}(要素「1」フラグが設定されます)、 {2,3,5}(要素 '2' フラグ セット)、{3,5,5}要素 '3' フラグ セット、{3,5,5}要素 '5' フラグ セット。
ノート:。特定の要素のフラグが 1 に設定されると、その特定の要素はサブシーケンスの最小値を決定するために考慮されません。
動的計画法または最適なアプローチが必要です。私のコードは機能しますが、最適ではありません。私のコードへのリンク:。http://pastebin.com/LfCH79z私のコードの入力形式:. http://pastebin.com/wHqJTy0Y
再帰的な定式化
これは私のコードです:. http://pastebin.com/5QJNLEqy 基本条件は非常に明確で、非常に正しいようにも見えます。
しかし、私は再帰的な条件形成を形成する際に問題に直面しています
これが私のコードで、再帰条件を明確に述べていますが、正しい結果が得られていないようです。
誰でもエラーを教えてください。
私はすでにリンクを参照しました:. 特定の条件に従って特定の配列のすべての要素をマークするための最小ステップ数を見つける方法に関するヒントはありますか?