zoukankan      html  css  js  c++  java
  • BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草( dp )

    --------------------------------------------------------------------

    #include<cstdio>
    #include<algorithm>
    #include<iostream>
    #include<cstring>
     
    #define rep( i , n ) for( int i = 0 ; i < n ; ++i )
    #define clr( x , c ) memset( x , c , sizeof( x ) )
     
    using namespace std;
     
    const int maxn = 50000 + 5;
     
    bool dp[ maxn ];
     
    int main() {
    freopen( "test.in" , "r" , stdin );
    clr( dp , 0 );
    int n , V;
    cin >> V >> n;
    while( n-- ) {
    int t;
    scanf( "%d" , &t );
    for( int i = 0 ; i + t <= V ; i++ ) 
       if( dp[ i ] ) dp[ i + t ] = true;
       
    dp[ t ] = true;
       
    }
    for( int i = V ; i >= 0 ; i-- ) if( dp[ i ] ) {
    cout << i << " ";
    break;
    }
    return 0;
    }

    -------------------------------------------------------------------- 

    1606: [Usaco2008 Dec]Hay For Sale 购买干草

    Time Limit: 5 Sec  Memory Limit: 64 MB
    Submit: 743  Solved: 560
    [Submit][Status][Discuss]

    Description

        约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买,
    他最多可以运回多少体积的干草呢?

    Input

        第1行输入C和H,之后H行一行输入一个Vi.

    Output

     
        最多的可买干草体积.

    Sample Input

    7 3 //总体积为7,用3个物品来背包
    2
    6
    5


    The wagon holds 7 volumetric units; three bales are offered for sale with
    volumes of 2, 6, and 5 units, respectively.

    Sample Output

    7 //最大可以背出来的体积

    HINT

    Buying the two smaller bales fills the wagon.

    Source

  • 相关阅读:
    线程安全
    线程控制(阻塞、睡眠、让步)
    防止代码被扒
    一个demo学会js
    移动端Web页面问题解决方案
    利用ajax实现和后台交互的模糊搜索
    纯前端实现模糊搜索
    用Jquery控制文本框只能输入数字和字母
    博主收藏的前端框架,极力推荐!
    将阿拉伯数字转换为大写
  • 原文地址:https://www.cnblogs.com/JSZX11556/p/4547817.html
Copyright © 2011-2022 走看看