11

「別の値」にできるだけ近づけるために、配列内の値を結合するために使用できるアルゴリズムを探しています。

たとえば、終値の結果をもたらす組み合わせを調べたい数値は 2.5 です。そして、私の配列は[0.5, 1.0, 1.5, 2.0, 3.0]. この場合の組み合わせは になります2.0+0.5

2.7 は同じコンボ (2.5 が最も近い) を生成し、3.7 は生成3.0+0.5し、7.0 は3.0+3.0+1.0.

利用可能な組み合わせなどを作成するために、さまざまなアルゴリズムを調べてきました。たとえば、これは次のとおりです m は、同じ値を複数回使用できるようにする関数を作成するのが困難です (7.0 の例のように)。これにより、組み合わせの数が非常に多くなります。

隠れている良い例を持っている人はいますか?または、与えるべき指針はありますか?

EDIT @zkar が「ナップザックの問題」について教えてくれました。私の例では、求められる値が指定された範囲 (1.0 と 10.0) にあることを付け加えておきます。これにより、組み合わせが多少制限されます。

4

2 に答える 2