社区讨论

10分求助

P1048[NOIP 2005 普及组] 采药参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@lo3387is
此快照首次捕获于
2023/10/24 00:04
2 年前
此快照最后确认于
2023/10/24 00:04
2 年前
查看原帖
只对了第一个点
C
#include<iostream>
#include<algorithm>
using namespace std;
int w[1000];//时间 
int c[1000];//价值 
int dp[100][100];//第i个物品,恰好装满重量为v的背包 
int main(){
	int n,m;
	cin>>n>>m;
	for(int i=0;i<m;i++){
		cin>>w[i]>>c[i];
	}
	//初始化dp数组
	dp[0][0]=0;
	//状态转移方程
	for(int i=1;i<=m;i++){
		for(int v=w[i];v<=n;v++){
			dp[i][v]=max(dp[i-1][v],dp[i-1][v-w[i]]+c[i]);
		}
	} 
	//cout<<dp[n][m];
	cout<<dp[m][n];
}

回复

2 条回复,欢迎继续交流。

正在加载回复...