哪位dalao能帮我看看这个分组背包代码呀
  • 板块学术版
  • 楼主Secret_Sky_2021
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/7/11 16:21
  • 上次更新2023/11/3 10:30:54
查看原帖
哪位dalao能帮我看看这个分组背包代码呀
601270
Secret_Sky_2021楼主2023/7/11 16:21

题目链接

#include<bits/stdc++.h>
using namespace std;
const int N=200,M=30,T=10;
int m,n,t;
struct pw{
	int m,w;
};
vector<pw> num[T];
int dp[N][M];
int main(){
	cin>>m>>n>>t;
	int x,y,z;
	for(int i=1;i<=n;i++){
		cin>>x>>y>>z;
		num[z].push_back({x,y});
	}
	for(int i=1;i<=t;i++){
		for(int j=1;j<=m;j++){
			dp[i][j]=dp[i-1][j];
			for(int s=0;s<num[i].size();s++){
				if(j-num[i][s].m>=0){
					dp[i][j]=max(dp[i][j],dp[i-1][j-num[i][s].m]+num[i][s].w);
				}
			}
		}
	}
	cout<<dp[t][m];
	return 0;
}
/*
10 6 3
2 1 1
3 3 1
4 8 2
6 9 2
2 8 3
3 9 3
------
20
*/
2023/7/11 16:21
加载中...