この問題では、最大でも A 0 と B1 を含む最長のサブセットを見つける必要があります。必要なのは、配列要素を使用して考えられるすべてのサブセットを見つけ、最大でも A 0 と B1 を含む最長のサブセットを見つけることだけです。
このチュートリアルでは、まず問題を解決するための再帰的手法を学習します。その後、動的プログラミング手法を使用してコードを最適化します。
問題文 - N 個のバイナリ文字列を含む配列が与えられています。さらに、A と B の整数が与えられます。指定されたバイナリ文字列を使用して、A 0 と B1 より多くが含まれないように最長のサブセットを作成する必要があります。
###例### リーリー リーリーイラスト
方法1
ステップ 1
ステップ 1.1
ステップ 1.2
ステップ 1.3
ステップ 1.2
ステップ 2
ステップ 3
ステップ 4
ステップ 5
ステップ 6
ステップ 7
ステップ 8
ステップ 9
###例### リーリー ###出力### リーリー 時間計算量 - N 個の配列要素を使用してすべての可能なサブセットを見つけるため、O(2N)。
ステップ 1
ステップ 2
ステップ 3
ステップ 4 - dpTable[A][B][index] の値が 0 より大きい場合、ステータスが計算され、その値が返されたことを意味します。
ステップ 5
ステップ 6
ステップ 7
###例### リーリー ###出力### リーリー 時間計算量 - O(A*B*N)、結果を取得するには 3D リストにデータを入力する必要があるため。
以上が文字列配列から A 0 と B 1 で構成される最長のサブセットの長さを見つけます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。