背包30分QAQ
查看原帖
背包30分QAQ
339728
末然Ender楼主2020/12/21 22:10
#include <bits/stdc++.h>
using namespace std;
int m/*容量*/,n/*物品数量*/,w[1010]/*物品体积*/,c[1010]/*物品价值*/,dp[1010];//dp~~~~~//

int main(){
	cin>>m>>n;
	for(int i=1;i<=n;i++){
		cin>>w[i]>>c[i];
	}
	for(int i=1;i<=n;i++){
		for(int j= 1;j<=m;j++){
			if(w[i]<=j){
				dp[j]=max(dp[j],dp[j-w[i]]+c[i]);
			}
		}
	}
	cout<<dp[m];
	return 0;
}
2020/12/21 22:10
加载中...