码农谷之采药

来源:互联网 发布:手机淘宝排名怎么提升 编辑:程序博客网 时间:2024/05/16 15:05

码农谷采药问题-01背包算法

#include <stdio.h>#include <string.h>/* 采药时间 */int T = 0;/* 采药数目 */int M = 0;int V[101][1001];#define MAX(a,b) ((a) > (b)?(a):(b))int main(){    int i = 0,j = 0;    int t,v ;    memset(V,0,sizeof(short)*1001);    scanf("%d %d",&T,&M);    for(i = 1;i <= M;i ++)    {        scanf("%d %d",&t,&v);        for(j = 1;j <= T;j ++)        {            if(t > j)            {                V[i][j] = V[i - 1][j];            }            else            {                V[i][j] = MAX(V[i - 1][j],V[i - 1][j - t] + v);            }        }    }    printf("%d\n",V[M][T]);    return 0;}
0 0