uq_72671612341


私信TA

用户名:uq_72671612341

访问量:74

签 名:

等  级
排  名 22928
经  验 601
参赛次数 0
文章发表 1
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

解题思路:

注意事项:

参考代码:

#include<stdio.h>

int max(int a,int b)

{

    return a>b?a:b;

}

int main()

{

    int N,m;//N表示总钱数,m表示物品件数

    int i,j;

    int ds[1000][30000]={0};

    int v[1000],p[1000];

    scanf("%d%d",&N,&m);

    for(i = 1;i <= m;i++) 

    {

        scanf("%d%d",&v[i],&p[i]);//v物品价格,p物品重要度;

    }

    for(i = 1;i <=m;i++) 

    {

        for(j = 0;j <= N;j++) 

        {

            if(j>=v[i])

            {

                ds[i][j]=max(ds[i-1][j],ds[i-1][j-v[i]]+v[i]*p[i]);

            }

            else

            {

                ds[i][j]=ds[i-1][j];

            };

        }

    }

    printf("%d",ds[m][N]);

    return 0;

}


 

0.0分

2 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区