bone collector3
一维。。0ms 198kb
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int main( )
{
int N,T,V,dp[1100],value[1100],volume[1100];
scanf("%d",&T);
while (T--)
{
int i, j;
scanf("%d%d",&N,&V);
for (i = 1; i <= N; i++)
scanf("%d",&value[i]);
for (i = 1; i <= N; i++)
scanf("%d",&volume[i]);
memset(dp, 0, sizeof(dp));
for (i = 1; i <= N; i++)
for (j = V; j >= volume[i]; j--)
dp[j] = max(dp[j], dp[j - volume[i]] + value[i]);
printf("%d\n",dp[V]);
}
return 0;
}
posted on 2011-07-31 11:32 more think, more gains 阅读(102) 评论(0) 编辑 收藏 举报