zoukankan      html  css  js  c++  java
  • D

     
    Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u

    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
     1 Home    Problems    Status    Contest    [xiong_tao]    Logout
     2 xiong_tao 's source code for D
     3 Memory: 1952 KB         Time: 313 MS
     4 Language: G++         Result: Accepted
     5 
     6 1
     7 2
     8 3
     9 4
    10 5
    11 6
    12 7
    13 8
    14 9
    15 10
    16 11
    17 12
    18 13
    19 14
    20 15
    21 16
    22 17
    23 18
    24 19
    25 20
    26 21
    27 
    28 #include<cstdio>
    29 #include<string.h>
    30 using namespace std;
    31 int dp[400000],w[400000],d[4000];
    32 int n,m;
    33 int main()
    34 {
    35     int i,j;
    36     while(scanf("%d%d",&n,&m)!=EOF)
    37     {
    38         for(i=0;i<n;i++)
    39             scanf("%d%d",&w[i],&d[i]);
    40         memset(dp,0,sizeof(dp));
    41         for(i=0;i<n;i++)
    42             for(j=m;j>=0;j--)
    43                if(j>=w[i])
    44                dp[j]=dp[j]>dp[j-w[i]]+d[i]?dp[j]:dp[j-w[i]]+d[i];
    45         printf("%d
    ",dp[m]);
    46     }
    47     return 0;
    48 }
    49 
    50 FAQ | About Virtual Judge | Forum | Discuss | Open Source Project
    51 All Copyright Reserved ©2010-2012 HUST ACM/ICPC TEAM
    52 Anything about the OJ, please ask in the forum, or contact author:Isun
    53 Server Time: 2014-07-28 18:43:07
  • 相关阅读:
    Web网站架构演变—高并发、大数据
    企业级Nginx Web服务优化实战
    初始化mysql数据库时提示字符编码错误的解决办法
    linux下logrotate 配置和理解
    Centos 5.2下安装多个mysql数据库
    编译安装 mysql 5.5,运行 cmake报错Curses library not found
    Centos 5.5 编译安装mysql 5.5.9
    理解索引的基数
    centos下yum安装mysql5.6后,无法启动 MySQL Daemon failed to start
    如何从MySQL官方Yum仓库安装MySQL5.6
  • 原文地址:https://www.cnblogs.com/angledamon/p/3873795.html
Copyright © 2011-2022 走看看