原题传送门
#include#include using namespace std; const int N = 11, M = 16; int n, m; int f[N][M]; int w[N][M];//w[i][j]记录的是第i个公司分配j太设备是的盈利 int way[N]; int main() { cin>>n>>m; for(int i = 1; i <= n; i ++ ){ for(int j = 1; j <= m; j ++ ){ cin>>w[i][j]; } } for(int i = 1; i <= n; i ++ ){//枚举物品 for(int j = 0; j <= m; j ++ ){//枚举体积 for(int k = 0; k <= j; k ++ ){//将每个物品的体积视为1 ,k = 0就是考虑了不放第i个物品的情况 f[i][j] = max(f[i][j], f[i - 1][j - k] + w[i][k]);//放入第i个物品,且放入的个数为k(给第i个公司分k台设备) } } } cout< 欢迎分享,转载请注明来源:内存溢出
评论列表(0条)