いくつかの条件に従って、セットを所定数の互いに素なサブセットに分割する方法は?
セットA≜{1,…,k}A≜{1,…,k}A\triangleq\{1,\ldots,k\}、整数s⩽ks⩽ks\leqslant k、および負でない整数a_ {ij}が与えられaijaija_{ij}ます。私の問題を見つけることであるsss互いに素なサブセットSjSjS_jの{1,…,k}{1,…,k}\{1,\ldots,k\}ように: ⋃sj=1Sj=A⋃j=1sSj=A\bigcup_{j=1}^s S_j=A ; そして |Sj|⩽aij|Sj|⩽aij|S_j|\leqslant a_{ij}(すべてのi∈Sji∈Sji\in S_jおよびj=1,…,sj=1,…,sj=1,\ldots,s。 この問題を解決するには?実行可能な解決策を見つけるのは難しいですか? いくつかのj \ in \ {1、\ ldots、n \}で始まり、番号までi \ in \ {1、\ ldots、k \}j∈{1,…,n}j∈{1,…,n}j\in\{1,\ldots,n\}を割り当てる手順を試したので、問題を解決するのは簡単ではないと思いますIに割り当てJより大きいA_ {IJ}一部のI割り当てます。しかし、これは不正解です。どのjにも割り当てられないiが残る可能性があるためです(それらのa_ {ij}が満たされなかったため)。i∈{1,…,k}i∈{1,…,k}i\in\{1,\ldots,k\}iiijjjaijaija_{ij}iiiiiijjjaijaija_{ij} ブルートフォースメソッドは、Aのすべてのサブセットを生成してAAAそれぞれをテストする必要がある場合、私にとっては機能しますが(k=8,n=3k=8,n=3k=8,n=3)、非常に非効率的です。