私はCard
インスタンスの配列を持っています。この基準で考えられるすべての組み合わせを見つける方法は?
Card[] allCards;
Iは、以下の条件の下で、これらのカードのすべての可能な組み合わせを得ることになっています:
- 組み合わせの全てが、3枚以上のカードを持っている必要があります。
- 組み合わせにはカードの制限がありません(合計15枚のカードがある場合、15枚のカード、13枚、10枚など)。
大学では、この仕事をより簡単に行うことができるファンシーライブラリを使用することは想定されていません。
私はペアでやったことがありますが、制限はないと考えて、私が通常行うアルゴリズムはうまくいかないでしょう。
それはかなり彼らはpythonのためにここで尋ねるものです:Find all possible combinations
任意のアイデア?私はコードや何も望んでいません - 私はちょうどアルゴリズム/アイデアを失っています。
私の問題(より詳細な)
私は2つのループ(他の内1)を行うことでペアを作ることができます。 3つのループ(別のループの中で1つのループ)を持つことで、私はトリプレットを作ることができます。
しかし、私はこの特定の問題を行う方法がわからないので:
- 配列は、15枚のカードを持っている場合はどうすれば?私は15ループを書くことができません...
- もちろん、私は14,13,12ループに行く必要があります...(すべての組み合わせがそれぞれ15個の要素ではないので、14個の組み合わせがありますこの15要素配列で作業する場合、13,12要素)
私はいくつかの組み合わせを見つけることができますが、動的にはできません。
効率性を心配する前に(少なくとも入力配列が小さい場合は)機能するものを手に入れることをお勧めします。すべてのペアを生成することができれば、それを使ってすべてのトリプルを生成できますか? –
コードでない場合は、探しているものが不明です。あなたはすでに必要なものを言及しています:Googleとスタックオーバーフローで複数の結果をひっくり返す "すべての組み合わせのリスト"。あなたが問題を解決できない具体的な理由はありますか? – Grambot
「これらのカードのすべての可能な組み合わせを得る」という意味は正確に何ですか?結果を出力するか、単純に数を表示する必要がありますか?そこには大きな違いがあります。 –