HDU 2602 Bone Collector

来源:互联网 发布:舒同 书法 知乎 编辑:程序博客网 时间:2024/06/14 05:12

标准01背包

#include<bits/stdc++.h>using namespace std;int a[1020],b[1020],dp[1020];int main(){    int T,N,V;    scanf("%d",&T);    for(int i=1;i<=T;i++)    {        memset(dp,0,sizeof(dp));        scanf("%d%d",&N,&V);        for(int j=1;j<=N;j++)            scanf("%d",&a[j]);        for(int j=1;j<=N;j++)            scanf("%d",&b[j]);        for(int j=1;j<=N;j++)            for(int k=V;k>=b[j];k--)            {                if(dp[k-b[j]]+a[j]>dp[k])                    dp[k]=dp[k-b[j]]+a[j];            }        printf("%d\n",dp[V]);    }    return 0;}


0 0
原创粉丝点击