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

1
k組み合わせの高速インデックス作成
少し前に取り組んでいた古い問題を再検討しています。 典型的なシナリオは、「8ビット整数内に3ビットが設定されている」、つまり00000111です。 ネストされたループによって、3セットのビットを持つすべての一意の組み合わせを(順番に)簡単に生成できます。私が興味を持っているのは、マッピングインデックス<->の組み合わせです。つまり、「00001011」が2番目の組み合わせ(またはゼロベースのインデックスでは値「1」)になります。 これまでのところ、すべての組み合わせを実行してテーブルに格納し、ルックアップインデックス->会話をO(1)操作にしました。もう一方の方向はO(ln(n))で、二分探索です。 ただし、欠点は、ドメインを増やすと、これが実行可能でないポイントまで、明らかにメモリに負荷がかかることです。 n番目の組み合わせまたは特定の組み合わせのインデックスを計算する簡単な方法は何ですか?組み合わせの順序はいいでしょうが、必須ではありません。

3
最もカロリーが均等な食事の取り方を選ぶ
私は1日に5回食事をし、週に7日あるので、各食事に7つのレシピがあり、合計35のレシピがあるとします。各レシピにはカロリー数があります。毎日、食事ごとに1つのレシピが含まれている必要があり、各レシピは特定の食事に固定されています(たとえば、ディナーにパンケーキを用意することはできません)。35のすべてのレシピがソリューションに含まれている必要があるため、週の間にレシピを繰り返すことはできません。 1日あたりのカロリー数が最も均等になるような食事の配置を見つけたいと思います。つまり、毎日消費される総カロリーの差を最小限に抑えたいと思っています。 これは宿題の問題ではありません—実際にはそうです!私はブルートフォースよりも優れたアプローチを思い付くことができず、7!^ 4の組み合わせがあります。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.