poj 3624

来源:互联网 发布:赵洪文国 知乎 编辑:程序博客网 时间:2024/05/29 18:05

1. 地址

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

2. 定位

  • 动态规划

  • 0-1背包

3. 分析

典型0-1背包,具体思路见 hdu 2602。

4. 代码

#include <stdio.h>#include <stdlib.h>int weight[3403];int value[3403];int dp[12881];int main(){    int N,M;    int i,j;    scanf("%d*c",&N);    scanf("%d*c",&M);    memset(weight,0,sizeof(weight));    memset(value,0,sizeof(value));    memset(dp,0,sizeof(dp));    for(i=1; i<=N; i++)    {        scanf("%d %d*c",&weight[i],&value[i]);    }    for(i=1; i<=N; i++)    {        for(j=M; j>=weight[i]; j--)        {            dp[j] = dp[j-weight[i]] + value[i] > dp[j] ? dp[j-weight[i]] + value[i] : dp[j];        }    }    printf("%d\n",dp[M]);    return 0;}

5. 性能

Exe.Time Exe.Memory Code Length Language 282MS 504K 586B c

Ver 1.0 2017-9-18

原创粉丝点击