ACM试题,要用动态规划解决,C或C++的程序
发布网友
发布时间:2022-04-29 20:51
我来回答
共1个回答
热心网友
时间:2022-06-22 15:02
是一个背包,可以去学习一下
#include<stdio.h>
#include<string.h>
const int MAX=1005;
int dp[MAX];
int v,p;
int main()
{
int n,m,i;
while(scanf("%d%d",&n,&m)!=EOF)
{
memset(dp,0,sizeof(dp));
while(m--)
{
scanf("%d%d",&v,&p);
for(i=n;i>=v;i--)
if(dp[i-v]+p>dp[i])
dp[i]=dp[i-v]+p;
}
printf("%d\n",dp[n]);
}
return 0;
}追问兄弟加点注释吧,只有源码不容易看懂
追答简单背包不解释。你可以百度一下背包。好好学习学习吧