题解 | #装箱问题#

装箱问题

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

#include <algorithm>
#include <iostream>
using namespace std;

const int N = 2 * 10010;
int a[N], f[N];
int main() {
    int m, n;
    cin >> m >> n;
    for(int i = 1; i <= n; i ++) cin >> a[i];

    for(int i = 1; i <= n; i ++)
        for(int j = m; j >= a[i]; j --)
        {
            f[j] = max(f[j], f[j - a[i]] + a[i]);
        }
    
    cout << m - f[m] << endl;
    return 0;
}

全部评论

相关推荐

爱看电影的杨桃allin春招:我感觉你在炫耀
点赞 评论 收藏
分享
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务