バックパック
1.バックパックタイプ01を埋めます
リバース列挙回避後の効果
タイトル説明
[タイトル]をすることを意図している
根の長さ及びSの数から選択されたスティックN(0≤n≤30)を有するように、その最も近いV(正の整数、0≤v≤20000)、およびS <= V。
[入力形式
整数v、整数n。次に、n個の棒の長さを表し、nは整数、。
[出力形式]
対を表す整数
[]サンプル入力
24
。6
8 7 9 3 12である。7
[サンプル]出力
0
#include <ビット/ STDC ++ H> 使用して 名前空間STDを、 INT [ 350 ]、V、N。 ブール F [ 20000 ]。 INT メイン() { CIN >> V >> N。 以下のために(int型 i = 1 ; iが= <N; iは++)CIN >> [I]。 F [ 0 ] = 1 ; 以下のために(int型 i = 1 ; iが<= N; I ++ ) のための(INT J = V; J> = [i]は、j-- ) であれば(!F [J])F [J] = F [J- [I]]。 int型のx =V; 一方、 x--(F [X]!) 。 coutの << V- X; リターン 0 ; }