首页 > 其他 > 详细

开心的小明(背包)

时间:2015-05-26 00:03:17      阅读:239      评论:0      收藏:0      [点我收藏+]

#include<stdio.h>
#include<string.h>
struct Case{
    int price,importance;
}data[25];
int main(){
    int N,m,T,bag[30000],a,b;
    scanf("%d",&T);
    while(T--){memset(bag,0,sizeof(bag));
        scanf("%d%d",&N,&m);
        for(int i=0;i<m;++i)scanf("%d%d",&a,&b),data[i].price=a,data[i].importance=a*b;
        for(int i=0;i<m;++i){
        for(int j=N;j>0;j--){
                if(j>=data[i].price){
            if(bag[j-data[i].price]+data[i].importance>bag[j])bag[j]=bag[j-data[i].price]+data[i].importance;    }
            }
        }
        printf("%d\n",bag[N]);
    }
    return 0;
}

开心的小明(背包)

原文:http://www.cnblogs.com/handsomecui/p/4529274.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!