わかりました...少しトリッキーなものがあります(少なくとも私にとっては)。
単純なオブジェクトのリストがあり、最大数を利用する組み合わせを見つける方法を見つける必要があります。これらのオブジェクトの各クラスには、名前のプロパティ (文字列)、結合する他の要素の名前のプロパティ (リスト)、結合する他の要素の名前のプロパティ (リスト) があります。結合するのが好きではありません。
コレクションに要素が追加され、その特定の要素が既にコレクション内にある他の要素の 1 つ (または複数) を「気に入っている」場合、追加された要素はコレクション内の気に入った各項目に対して +1 のスコアを返します。同様に、追加された要素が気に入らないコレクション内の他の要素ごとに -1 のスコアが返されます。すべての要素を最終的なコレクションに追加した後、各要素のスコアは >= 0 でなければなりません。
最大のコレクションを返すために使用できる要素の組み合わせを見つけるにはどうすればよいですか? 複数の組み合わせが同じ数の要素を返す場合は、すべての可能な組み合わせを返す必要があります。
それが理にかなっていることを願っています...また、私はC#(.NET 4.0)を使用していますが、どのプログラミング言語も使用できます。その背後にあるロジックを理解する必要があるだけです。
前もってありがとう、
ソニー