题解 | #点菜问题#

点菜问题

https://www.nowcoder.com/practice/b44f5be34a9143aa84c478d79401e22a

#include <iostream>

using namespace std;

const int MAXN = 101;
const int MAXP = 1001;

// dp数组在主函数外定义,元素自动初始化0
int dp[MAXP], v[MAXN], w[MAXN];

int main(){
    int c,n;
    while (cin>>c>>n){

        for (int i = 1; i <= n; ++i) {
            cin>>w[i]>>v[i];
        }

        // 一维遍历
        for (int i = 1; i <= n; ++i) {
            for (int j = c; j >= w[i]; --j) {
                dp[j] = max(dp[j], dp[j-w[i]]+v[i]);
            }
        }

        cout<<dp[c]<<endl;
    }
    return 0;
}

全部评论

相关推荐

01-23 14:54
同济大学 Java
热爱敲代码的程序媛:给你提几点【专业技能】这个模块里面可优化的地方:1.【具备JVM调优经验】可以去b站上搜一下JVM调优的视频,估计一两个小时凭你的学习能力就能掌握JVM调优的实践方面的技能。2.【MySql优化】MySql这一栏,你去b站或者找个博客看看MySql优化,学一下,如果你本身比较熟悉MySql语句的话,那基本半天时间凭你的学习能力MySql语句优化方面的技能你也能掌握个差不多。以上1,2两点主要是因为我看你专业技能大部分都说的是偏理论,没有写应用。再就是最后,你结合你的项目,想一想你的项目中哪些sql语句是可以用MySql优化的,到时候你面试的时候也好结合着说一下。
点赞 评论 收藏
分享
小狗吃臭臭:最简单的就是,你这个工作量写成一页就够了。把那些字大行稀的内容去掉。 个人技能放在下边,实习放在第二个栏目。 不要写个人收获,你的个人收获别人有什么关系?写好项目就行了。其实你两个小项目和个人技能很重合,建议合并。校内实践可有可无,写几个获奖证书就差不多了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务