こんにちはStackoverflowの人々、
私は、そのユーザーが本を買うのに最も安い場所を見つけるサイトを運営しています。これは1冊の本の場合は簡単ですが、複数の本の場合は、ある店舗で1冊の本を購入し、別の店舗で別の本を購入する方が安い場合があります。
現在、ユーザーリストにあるすべての本を販売している最も安い店を見つけましたが、よりスマートなシステムが必要です。ここにいくつかのより多くの情報があります:
- 本の価格は店にとって一定です。
- 送料は、本の数や本の総額によって異なります。
- 各ショップオブジェクトは、一連の本を受け取り、送料を返すことができます。
- 多くの場合、すべての店がすべての本を販売しているわけではありません。
ここで私のサイトにリンクするのがクールかどうかはわかりませんが、それは私のユーザープロファイルにリストされています。
一番安いお店と本の組み合わせを見つけたいです。
総当たり攻撃が必要になるのではないかと心配しています。35のショップがあるため、適度な数の本の場合、組み合わせの数は膨大になります。組み合わせの数は(#shops)^(#books)だと思いますが、100%ではありません
問題は、どのようなアプローチを使用すべきかということです。この問題は、よく知られているクラスの問題に当てはまりますか?ブルートフォースが必要な場合、Rubyでこれを行うための良い方法は何ですか?ショップに優先順位を付けて最初に試すことはできますか?