アイデア:DP、01リュックサック
------------
この質問は、裸01バックパックであると言うことができる、唯一の違いは、二次元にだけ元の次元です。タイトルなので、スコアの解説の人気- -それは人気/増加である理由を私は理解していません。
すべての願いのために、唯一の2つの選択肢があります。満足満足かどうかのどちらか。01バックパックは、ACに再びそれを実行します。
$の\ RMコード$
#<ビット/ STDC ++ H.>含む 使用 名前空間; STD #DEFINE MAXM 205 INT N-、M、T、DP [MAXM] [MAXM]; // DPアレイを定義する 整数のmain(){ CIN >> N-M>を> T; のための(INT I = 1、X、Y、I <= N - 、Iは++){ // 読み取りながら、二つの配列を除去する便宜上、直接行う CIN >> X Yと、 のための(INT J = M; J> = X; - J) のための(INT K = T; K> = Y; - K)// 注意!2つの中間層でのループと逆にする必要があり、そうでない場合は、完全なバックパックになります! DP [J] [K] = MAX(DP [J] [K]、DP [J - X] [K - Y] + 1); // または満たされていない、または満たさ } COUT << DP [M] [ T] << ENDL; // の最大値に最終出力 戻り 0 ; }