長さの異なるムービー クリップ ( a1,...,an )の (再生) リスト(A)があります。(A)のクリップからクリップ ( b1,...,bm ) を連結した新しいリスト(B)を作成したいと思います。
(B)のbxが超えてはならないMAX_LENという制限もあります。a 内の隣接するクリップのみを連結できます ( a1+a2+a3は正当な連結ですが、a1+a3はそうではありません)。(A) のすべてのクリップは、 (B)に 1 回表示され、 (A)に表示された順序で表示される必要があります。
最適解プライマリ:
1) (B)のクリップの数を最小限に抑えます。
そして二次:
2) (B)の最短クリップの継続時間を最大化します。
主な制約1)は2)よりも重要であるため、NumOfClips( S1 ) < NumOfClips( S1 )である2 つの異なるソリューションS1およびS2の場合、durationOfShortestClip( S1 ) < durationOfShortestClip( S2 ) であっても、 S1はS2よりも「最適」です。
以下は、入力リスト(A)の 3 つの可能な出力(B1)と(B2)と(B3)を示す例です。( B1 )または(B2)のいずれも1 )を満たさない (ただし、25>23 であるため、 (B2)は(B1)よりも優れたソリューションです) 最適なソリューションは(B3)です。
効率的な方法で最適なソリューションを見つける方法を知りたいですか? 最適なサブ問題の存在または非存在など、その他のヘルプ完全な情報/手がかりも高く評価されます。