#include<cstdio>#include<iostream>using namespace std ;int m , G , i , j , k , n , v [ 1001 ], g [ 1001 ], hl [ 1001 ], f [ 1001 ][ 1001 ];int main (){scanf ( "%d %d" , & m , & G );scanf ( "%d" , & n );for ( i = 1 ; i <= n ; i ++ )scanf ( "%d %d %d" , & hl [ i ], & v [ i ], & g [ i ]);for ( i = 1 ; i <= n ; i ++ )for ( j = m ; j >= v [ i ]; j -- )for ( k = G ; k >= g [ i ]; k -- )if (( j >= v [ i ]) && ( k >= g [ i ]))f [ j ][ k ] = max ( f [ j ][ k ], f [ j - v [ i ]][ k - g [ i ]] + hl [ i ]);printf ( "%d" , f [ m ][ G ]);return 0 ;}
二维费用背包codevs1669运输装备
最新推荐文章于 2023-07-19 21:16:00 发布