問題タブ [combinations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
315 参照

vb.net - 組み合わせコードをより大きなリストに適応させる

小さなリストの文字列の組み合わせを生成する次のコードがあり、これを 300 を超える文字列単語の大きなリストに適応させたいと考えています。このコードを変更する方法や別の方法を使用する方法を提案できますか。

'

変更点//

wordDistance = 1 の場合、inputList.Count.ToString / 2 へ

0 投票する
1 に答える
635 参照

partitioning - 1 と 0 が等しいすべての 2 進数を数える

私は、等辺二分割アルゴリズムのバイナリ表現を実装しています.1と0が等しい(N/2)Nビットのすべての組み合わせを反復する最良の方法は何だろうと思っています. コーディングが最も簡単ではなく、最も簡単な方法を見つけようとしています。ありがとう。

0 投票する
7 に答える
4902 参照

c# - x 個のアイテムのセットからランダムに選択された n 個のアイテムの可能なすべての組み合わせ (アルゴリズム)

x 個の文字列アイテムのセットを持っています。eg("A","B","C","D","E","F")リストから 4 つの項目をランダムに選択する必要がある場合など、考えられるすべての組み合わせを生成するアルゴリズムです。これらの 4 つの項目は、("A","B","C","D") または ("A","B","C","E") または ("A","B") のいずれかです。 ,"C","F") または ("A","B","D","E") ...etc 繰り返しなしで生成されるアイテムのセット数を計算する式が必要です。 ("A"、"B"、"C"、"D" )結果の組み合わせの1つとして、(「A」、「B」、「D」、「C」)のようにセット内のアイテムの位置を置き換えることで、同じアイテムを別の結果の組み合わせと見なすことはできません。また、アルゴリズムが必要です任意のプログラミング言語で可能なすべての組み合わせを生成します。[C#、VB.NET、Java、C++]

助けてくれてありがとう。

0 投票する
2 に答える
575 参照

enumeration - さまざまなタイプのリストのすべての組み合わせを列挙する

異なるタイプの2つのIEnumberableを考えると、両方のリストを反復処理してすべての可能な組み合わせに対してアクションを実行するためのベストプラクティス(読みやすさと保守性を考慮)は何ですか?

私の最初の解決策は、ネストされたforeachループを使用して、最初のIEnumerableを反復処理し、次にそのループ内で2番目のIEnumerableを反復処理し、外部ループと現在のループからターゲットメソッドに値を渡すことでした。例えば。:

LINQを使用して再構築しようとしましたが、明らかな利点がなく、直感的ではないように思われるものになりました。ここで検索すると、子プロパティを反復処理するためのforeachのネストに関する多くの質問が表示されますが、2つの異なるリストを反復処理することについては何も見つかりませんでした。

0 投票する
6 に答える
5839 参照

c++ - powerset の組み合わせまたはサブセットの next_permutation

next_permutation のような一連の値の次の組み合わせを提供する同等のライブラリまたは関数はありますか?

0 投票する
4 に答える
3134 参照

c# - 考えられるさまざまな組み合わせを見つけるための C# アルゴリズム

私は 10 個のボックスを持っています。各ボックスは、アイテムのグループ/タイプから 1 つのアイテムを保持できます。各「グループ」タイプは、10 個のボックス タイプの 1 つにのみ収まります。アイテム プールには n 個のアイテムを含めることができます。グループには完全に異なる項目があります。各アイテムには価格があります。さまざまな可能性をすべて生成するアルゴリズムが必要なので、アイテムの属性に基づいて、各アイテムへのカスタム ランク/重量の割り当てに対して、さまざまな価格ポイントを把握できます。

問題の小さな図

ボックス A - アイテム 1、2、3、4 を入れることができます

ボックス B - アイテム 6、7、8、9、10、11、12 を持つことができます

ボックス C - アイテム 13、15、16、20、21 を持つことができます

詳細
ソリューションは、BOX A、BOX B、および BOX C のセットであり、ボックスのセットに基づいて最大のランクを持ちます。各ボックスには、そのボックスに指定されたアイテムを 1 つだけ入れることができます。アイテムはオブジェクトであり、オブジェクトには 3 つの属性 (固さ、弾力性、強さ) があります。各属性のスコアは 1 ~ 100 です。目標は、各属性の重みを入力することです。次に、ロジックがすべてのアイテムに対して実行され、各属性の重みに基づいて上位ランクのアイテムの組み合わせが決定されます。説明を簡単にするために各アイテムに 3 つの属性を使用しましたが、アイテムには約 10 の異なる属性があります。

アイテムはデータベースに保存され、どのボックスに入ることができるかを示す列があります。すべてのボックスの種類は配列に保存され、アイテムを一般的なリストに入れることができます。誰もがこれを行う簡単な方法を見ています。

より簡単な方法を見つけることができるかどうかを確認するために、10 個のネストされた foreach を実行してみました。ネストされたループの実行には何時間もかかります。ネストされた for each は基本的にすべての組み合わせをプルし、各組み合わせのランクを計算し、上位 10 のランク付けされた項目の組み合わせを出力用に保存します

0 投票する
1 に答える
5917 参照

python - Pythonでのマウスとキーボードの組み合わせイベントの生成

たとえば、キーの押下とマウスのクリックを同時に実行できるようにしたいControl+LeftClick

現時点では、Controlを実行してから、次のコードで左クリックすることができます。

これは、キーボードのコントロールを押してからクリックすることです。コントロールを長く押し続け、コードの実行を続行するために押したまま戻るには、これが必要です。キーを押してから、コードの後半で、マウスの動作のようにキーを持ち上げるように指示する、より低いレベルの言い方はありますか?

0 投票する
2 に答える
873 参照

python - LSAT のロジック ゲームのセクションに表示される組み合わせ問題のカテゴリは?

編集: 「シマウマの所有者」をプログラムで解決するを参照してください。同様のクラスの問題に対して

LSAT には、次のような論理問題のカテゴリがあります。

時系列順に I から 7 までの番号が付けられた放送の 7 つの連続したタイムスロットは、G、H、L、O、P、S の 6 つの歌のテープと、ちょうど 1 つのニュース テープで埋められます。各テープは異なるタイム スロットに割り当てられ、どのテープよりも長いテープはありません。ブロードキャストには次の制限が
あります。L は O の直前に再生する必要があります。
ニュース テープは L の少し後に再生する必要
があります。 G は P の後に来ます。

テストの勉強方法として、またプログラミングの課題として、条件を満たす順列のリストを生成することに興味があります。ただし、これがどのクラスの順列問題であるかはわかりません。型の問題を次のように一般化しました。

長さ n の配列 A が与えられた場合:

  1. n 個の一意のアイテムのセットを A 内に配置する方法は何通りありますか? 例えば。ABCDEFG を並べ替える方法はいくつありますか?
  2. 一意のアイテムのセットの長さが A の長さよりも短い場合、セット内のアイテムが複数回出現する可能性がある場合、セットを A 内に配置できる方法はいくつありますか? 例えば。ABCDEF => AABCDEF; ABBCDEFなど
  3. セットの項目が「ブロッキング条件」の対象である場合、一意の項目のセットを A 内に配置できる方法はいくつありますか?

私の考えは、制限をエンコードしてから、Python の itertools のようなものを使用して順列を生成することです。考えや提案は大歓迎です。

0 投票する
4 に答える
785 参照

python - 辞書から aded の組み合わせを計算する Python スクリプト

それぞれが 0 ~ 10 の値のプロパティを含むアイテムの辞書を取得し、さまざまな要素を追加して、どのアイテムの組み合わせが目的の合計を達成するかを選択するスクリプトを作成しようとしています。同じ「スロット」を共有するアイテムのみを使用して、これを行うスクリプトも必要です。

例えば:

次に、スクリプトは、「item_list」ディクテーションから、「スロット」ごとに 1 つのアイテムを使用して、追加したときに目的の結果が得られる組み合わせを選択する必要があります。

たとえば、必要な結果が 'prop_a': 3、'prop_b': 3、'prop_c': 8、'prop_d': 0 の場合、スクリプトは 'item_2'、'item_6'、および 'item_9' を選択します。機能した他の組み合わせと一緒に。

これを達成する方法はありますか?Python や完全なスクリプトである必要はありませんが、理論的にこれを行う方法についての説明だけで十分です。すべての組み合わせをループしてみましたが、すぐに手に負えなくなり、手に負えなくなったようです。実際のスクリプトでは、それぞれ 8 つのプロパティを持つ 20 の異なる「スロット」を使用して、約 1,000 のアイテムに対してこれを行う必要があります。

助けてくれてありがとう!

0 投票する
2 に答える
209 参照

c++ - リスト - 文字列 - テキストファイル

テキスト ファイル、リスト、および文字列に関していくつか質問があります。

テキストファイル内のテキストを読み取り、「string line;」を使用するコードを挿入することは可能でしょうか? または、テキストの新しい各行を定義し、それらすべてを 1 つのリストに変換するための何か。そのため、行を並べ替えたり、1 つまたは 2 つまたはすべての行を削除したり、特定の行のテキストを検索したりできます。