トラック
/
Cairo
Cairo
/
演習
/
ナップサック
ナップサック

ナップサック

中級

はじめに

Lhakpaは、シェルパの山岳ガイド兼ポーターです。 何か月も入念に準備を重ねてきた、Lhakpaが働く遠征隊がいよいよ出発します。 報酬として支払われるのは、基地キャンプまで運んだ荷物の価値です。

目の前にはたくさんの品物があり、それぞれに価値と重さがあります。 Lhakpaはそのすべてを持っていきたいところですが、ナップサックに入る重さには限りがあります。

説明

ここでの課題は、ナップサックに入る重さの上限を踏まえて、持ち出す品物を選び、選んだ品物の合計価値が最大になるようにすることです。

品物は、品物の配列として表されます。 それぞれの品物には、重さと価値があります。 与えられる価値は、すべて正の値です。 Lhakpaは、同じ品物を1つしか持ち出すことはできません。

たとえば、次のとおりです。

Items: [
  { "weight": 5, "value": 10 },
  { "weight": 4, "value": 40 },
  { "weight": 6, "value": 30 },
  { "weight": 4, "value": 50 }
]

Knapsack Maximum Weight: 10

上の例では、1つ目の品物の重さは5、価値は10、2つ目の品物の重さは4、価値は40、というようになっています。 この例では、Lhakpaは2つ目と4つ目の品物を持ち出すと価値が最大になり、その価値は90です。 ナップサックの重さの上限は10なので、90を超える価値にはできません。


出典

Wikipediaリンクは新しいウィンドウまたはタブで開きます
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Cairo Exercism

ナップサックを始める準備はできましたか?

Exercismに登録すれば、25個のコンセプト68個の演習、そして本物の人間によるメンタリングとともに、Cairoを学んでマスターできます。すべて無料です。