zoukankan      html  css  js  c++  java
  • M

    Description

    Many years ago , in Teddy’s hometown there was a man who was called “Bone Collector”. This man like to collect varies of bones , such as dog’s , cow’s , also he went to the grave …
    The bone collector had a big bag with a volume of V ,and along his trip of collecting there are a lot of bones , obviously , different bone has different value and different volume, now given the each bone’s value along his trip , can you calculate out the maximum of the total value the bone collector can get ?

    Input

    The first line contain a integer T , the number of cases.
    Followed by T cases , each case three lines , the first line contain two integer N , V, (N <= 1000 , V <= 1000 )representing the number of bones and the volume of his bag. And the second line contain N integers representing the value of each bone. The third line contain N integers representing the volume of each bone.

    Output

    One integer per line representing the maximum of the total value (this number will be less than 2 31).

    Sample Input

    1
    5 10
    1 2 3 4 5
    5 4 3 2 1

    Sample Output

    14


    题目大意:有N个数,背包的容量为V,第一行为价值,第二行为对应的体积。那么题目就简单了。著名的背包问题
    for(i=0;i<n;i++)
              for(j=v;j>=volum[i];j--)
                   bb[j]=max(bb[j],bb[j-volum[i]]+value[i]);//模板哟


    代码如下:

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    using namespace std;
    int main()
    {    int value[1000],volum[1000],bb[1000],n,v,t,i,j;
         scanf("%d",&t);
         while(t--)
         { scanf("%d%d",&n,&v);
              for(i=0;i<n;i++)
              scanf("%d",&value[i]);
              for(i=0;i<n;i++)
              scanf("%d",&volum[i]);
              memset(bb,0,sizeof(bb));
              for(i=0;i<n;i++)
              for(j=v;j>=volum[i];j--)
                   bb[j]=max(bb[j],bb[j-volum[i]]+value[i]);//不断更新每个体积可以放的最大价值。
              printf("%d ",bb[v]);
         }
         return 0;
    }
  • 相关阅读:
    HashMap源码分析
    ArrayList、LinkedList和Vector源码分析
    java序列化
    Python Web自动化测试入门与实战,从入门到入行
    Chrome 自带截图工具
    【转】chrome DEvTools 使用,进行定位元素
    偷懒大法好,用 selenium 做 web 端自动化测试
    Python代码覆盖率分析工具Coverage
    Jmeter分布式压力测试
    通过dockerfile制作镜像
  • 原文地址:https://www.cnblogs.com/441179572qqcom/p/5743608.html
Copyright © 2011-2022 走看看