HDU-2602 0-1背包

来源:互联网 发布:火爆网络的亚裔留学生 编辑:程序博客网 时间:2024/06/02 00:46

简单的01背包

/* * HDU-2602 bone collector * mike-w * 2011-10-10 */#include<stdio.h>#include<stdlib.h>#include<string.h>#include<assert.h>#define MAXV 1111#define MAXN 1111long opt[MAXV];long w[MAXN],v[MAXN];int T,N,V;int main(void){#ifndef ONLINE_JUDGEassert(freopen("2602.in","r",stdin));#endifint i,j;scanf("%d",&T);while(T-->0){scanf("%d%d",&N,&V);for(i=0;i<N;i++)scanf("%ld",v+i);for(i=0;i<N;i++)scanf("%ld",w+i);memset(opt,0,sizeof(opt));for(i=0;i<N;i++)for(j=V;j-w[i]>=0;j--)if(opt[j] < opt[j-w[i]]+v[i])opt[j]=opt[j-w[i]]+v[i];printf("%ld\n",opt[V]);}return 0;}


 

原创粉丝点击