タグ付けされた質問 「combinations」

30
nからk要素のすべての組み合わせを返すアルゴリズム
文字の配列を引数として取り、それらの文字の数を選択する関数を記述したいと思います。 たとえば、8文字の配列を提供し、その中から3文字を選択するとします。それからあなたは得るべきです: 8! / ((8 - 3)! * 3!) = 56 それぞれ3文字で構成される配列(または単語)。

27
リストの要素の可能なすべての組み合わせを取得するにはどうすればよいですか?
15個の数値を含むリストがあり、それらの数値の32,768通りの組み合わせをすべて生成するコードを記述する必要があります。 私が探しているように見えるコード(グーグルによる)をいくつか見つけましたが、コードはかなり不透明で、使用に注意しています。さらに、もっとエレガントな解決策が必要だと感じています。 私に発生する唯一のことは、10進数の整数1〜32768をループしてバイナリに変換し、バイナリ表現をフィルターとして使用して適切な数値を選択することです。 誰かがより良い方法を知っていますか?使用してmap()、多分?

7
リストのリストのすべての組み合わせ
私は基本的に組み合わせの Pythonバージョンを探していますList<List<int>> リストのリストを考えると、リスト間の項目の可能なすべての組み合わせを提供する新しいリストが必要です。 [[1,2,3],[4,5,6],[7,8,9,10]] -> [[1,4,7],[1,4,8],...,[3,6,10]] リストの数は不明なので、すべてのケースで機能するものが必要です。優雅さのボーナスポイント!


11
2つのリスト間の組み合わせ?
久しぶりに、自分が作ろうとしているアルゴリズムに頭を悩ませるのに苦労しています。基本的に、2つのリストがあり、2つのリストのすべての組み合わせを取得したいと考えています。 私はそれを正しく説明していないかもしれないので、ここに例があります。 name = 'a', 'b' number = 1, 2 この場合の出力は次のようになります。 1. A1 B2 2. B1 A2 トリッキーな部分は、「name」変数の項目が「number」変数の項目よりも多い場合があることです(番号は常にname変数以下になります)。 すべての組み合わせ(ネストされたforループ?)を実行する方法に混乱があります。また、番号リストにある項目よりも名前に項目が多い場合に、name変数の項目をシフトするロジックがさらに混乱しています。 私は最高のプログラマーではありませんが、誰かがロジック/アルゴリズムを明確にしてこれを達成するのを手伝ってくれるなら、私はそれを試してみることができると思います。だから私はネストされたforループで立ち往生しているところです。 更新: これは、3つの変数と2つの数値の出力です。 name = 'a', 'b', 'c' number = 1, 2 出力: 1. A1 B2 2. B1 A2 3. A1 C2 4. C1 A2 5. B1 C2 6. C1 B2

17
PHPで2つの文字列を組み合わせる方法は?
私は実際に私が何を望んだかを説明する方法がわかりませんが、あなたに見せます: 例えば: $data1 = "the color is"; $data2 = "red"; $ resultはとの組み合わせですので、私は何をする(または処理する)必要が$data1あり$data2ますか? 望ましい結果: $result = "the color is red";

18
統計:Pythonでの組み合わせ
Pythonで組み合わせ(nCr)を計算する必要がありますが、それを行うための関数math、numpyまたはstat ライブラリを見つけることができません。タイプの関数のようなもの: comb = calculate_combinations(n, r) 実際の組み合わせではなく、可能な組み合わせの数が必要なので、itertools.combinations興味がありません。 最後に、組み合わせを計算する数値が大きくなりすぎて、階乗が巨大になるため、階乗の使用を避けたいと思います。 これは本当に答えやすい質問のようですが、実際のすべての組み合わせを生成することについての質問に溺れています。

8
JavaScriptでCtrl + Zキーの組み合わせをキャプチャする
私はこのコードでJavaScriptでctrl+zキーの組み合わせをキャプチャしようとしています: <html> <head> <title>Untitled Document</title> </head> <body> <script type='text/javascript'> function KeyPress(e) { var evtobj = window.event? event : e //test1 if (evtobj.ctrlKey) alert("Ctrl"); //test2 if (evtobj.keyCode == 122) alert("z"); //test 1 & 2 if (evtobj.keyCode == 122 && evtobj.ctrlKey) alert("Ctrl+z"); } document.onkeypress = KeyPress; </script> </body> </html> コメント行「test1」は、ctrlキーを押したまま他のキーを押すとアラートを生成します。 コメント行「test2」は、zキーを押すとアラートを生成します。 「テスト1&2」の後の行に従ってそれらをまとめ、ctrlキーを押したままzキーを押しても、期待どおりにアラートが生成されません。 …

12
ネストされたループのより高速な代替手段?
数字の組み合わせのリストを作成する必要があります。数が非常に少ないので、byteではなく使用できますint。ただし、考えられるすべての組み合わせを取得するには、多くのネストされたループが必要です。私が求めていることを行うためのより効率的な方法があるかどうか疑問に思っています。これまでのコードは次のとおりです。 var data = new List<byte[]>(); for (byte a = 0; a < 2; a++) for (byte b = 0; b < 3; b++) for (byte c = 0; c < 4; c++) for (byte d = 0; d < 3; d++) for (byte e = 0; e < 4; …
85 c#  combinations 


3
SATソルバー(Python)を使用して、特定の領域内の自由なポリオミノのすべての組み合わせを見つける
私はSATソルバーの世界に不慣れで、次の問題についていくつかのガイダンスが必要になります。 それを考慮して: ❶4×4のグリッドに隣接する14個のセルを選択している ❷ サイズが4、2、5、2、1の5つのポリオミノ(A、B、C、D、E)があります ❸これらのポリオミノは無料です。つまり、その形状は固定されておらず、さまざまなパターンを形成できます。 SATソルバーを使用して、選択した領域(灰色のセル)内のこれら5つの遊離ポリオミノの可能なすべての組み合わせをどのように計算できますか? @spinkusの洞察に満ちた答えとORツールのドキュメントの両方を借りて、次のサンプルコードを作成できます(Jupyter Notebookで実行)。 from ortools.sat.python import cp_model import numpy as np import more_itertools as mit import matplotlib.pyplot as plt %matplotlib inline W, H = 4, 4 #Dimensions of grid sizes = (4, 2, 5, 2, 1) #Size of each polyomino labels = np.arange(len(sizes)) #Label …

2
フィールドに基づいてオブジェクトの大きなリストの最も効率的な組み合わせを取得します
特定の予算と組み合わせの上限を考慮して、星の数を最大化しようとしています。 質問の例: 500ユーロの予算で、許可された最大数以下のレストランのみを訪れ、食事を取り、可能な限り多くの星を集めます。 最大10個のレストランの100万のRestaurantインスタンスを処理できる可能性のある効率的なアルゴリズムを作成しようと思っています。 これは私が昨日質問した質問のクロスポストです: Java:フィールドに基づいてオブジェクトの大きなリストの最も効率的な組み合わせを取得してください 以下の解決策では、r8レストランにスターごとに15 $を割り当てます。つまり、リストを生成するとき、リストに最初にそれを入れ、残りの70 $では、さらに4つ星を与える2つだけのスターを取得できます。ただし、r8レストランをスキップするのに十分なほど賢い場合は(星あたりの最高のドルの比率ですが)、r1100ドルのコストと5つ星であるため、実際にはレストランの方が予算に適しています。 誰かが問題を試し、現在の解決策を打つのを手伝ってくれる? import itertools class Restaurant(): def __init__(self, cost, stars): self.cost = cost self.stars = stars self.ratio = cost / stars def display(self): print("Cost: $" + str(self.cost)) print("Stars: " + str(self.stars)) print() r1 = Restaurant(100, 5) r2 = Restaurant(140, 3) r3 = …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.