• poj 3624 Charm Bracelet


    http://poj.org/problem?id=3624

    一维数组的01背包,v一定要逆序枚举,不然会多次放同一种物品。

                                                                                      Charm Bracelet
    Time Limit: 1000MS   Memory Limit: 65536K
    Total Submissions: 24456   Accepted: 11031

    Description

    Bessie has gone to the mall's jewelry store and spies a charm bracelet. Of course, she'd like to fill it with the best charms possible from the N (1 ≤ N ≤ 3,402) available charms. Each charm i in the supplied list has a weight Wi (1 ≤ Wi ≤ 400), a 'desirability' factor Di (1 ≤ Di ≤ 100), and can be used at most once. Bessie can only support a charm bracelet whose weight is no more than M (1 ≤ M ≤ 12,880).

    Given that weight limit as a constraint and a list of the charms with their weights and desirability rating, deduce the maximum possible sum of ratings.

    Input

    * Line 1: Two space-separated integers: N and M * Lines 2..N+1: Line i+1 describes charm i with two space-separated integers: Wi and Di

    Output

    * Line 1: A single integer that is the greatest sum of charm desirabilities that can be achieved given the weight constraints

    Sample Input

    4 6
    1 4
    2 6
    3 12
    2 7

    Sample Output

    23
    #include<iostream>
    #include<cstring>
    #include<cstdio>
    using namespace std;
    int c,n;
    int v[3412],w[3412],f[12888];
    void backpack()
    {
        memset(f,0,sizeof(f));
        int i,j;
        for(i=1;i<=n;i++)
          for(j=c;j>=0;j--)
             if(j>=v[i])
                f[j]=max(f[j],f[j-v[i]]+w[i]);
         printf("%d
    ",f[c]);
    
    }
    int main()
    {
        int i;
        scanf("%d%d",&n,&c);
        for(i=1;i<=n;i++)
          scanf("%d%d",&v[i],&w[i]);
        backpack();
        return 0;
    
    }
  • 相关阅读:
    53. Maximum Subarray
    64. Minimum Path Sum
    28. Implement strStr()
    26. Remove Duplicates from Sorted Array
    21. Merge Two Sorted Lists
    14. Longest Common Prefix
    7. Reverse Integer
    412. Fizz Buzz
    linux_修改域名(centos)
    linux_redis常用数据类型操作
  • 原文地址:https://www.cnblogs.com/cancangood/p/4165930.html
Copyright © 2020-2023  润新知