比赛 15级练手赛 评测结果 AAAAA
题目名称 装箱问题 最终得分 100
用户昵称 1149182821 运行时间 0.009 s
代码语言 C++ 内存使用 5.60 MiB
提交时间 2018-08-02 18:16:44
显示代码纯文本
//#include<cmath>
#include<iostream>
#include<cstdio>
using namespace std;
	int v,n;
	int a[20001]={0};
	int p[31][20001]={0};
int main(){
	freopen("npack.in","r",stdin);
	freopen("npack.out","w",stdout);
	cin>>v>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	
	for(int i=1;i<=n;i++){
		for(int j=1;j<=v;j++){
			p[i][j]=p[i-1][j];
			if(j-a[i]>=0)
			p[i][j]=max(p[i-1][j],p[i-1][j-a[i]]+a[i]);
		}
	}
	cout<<v-p[n][v];
	///for(int i=1;i<=n;i++){
	//	for(int j=1;j<=v;j++){
	//		cout<<p[i][j];
	//	}
	//	cout<<endl;
	//}
	return 0;
}