讨论 / 这个代码比较短,也比较省内存
dengping 2015-10-30 00:04:29
点我顶贴 收藏 删除
#include <cstdio>

#include <algorithm>

#include <iostream>

using namespace std;

int n,m;

int dp[30000];//这里可以小点,大点稳当

int main() {

scanf("%d%d",&n,&m);

for (int i=1;i<=m;i++) {

int v,p;

scanf("%d%d",&v,&p);

for (int j=n;j>=v;j--) {

dp[j]=max(dp[j-v]+v*p,dp[j]);

}

}

printf("%d\n",dp[n]);

return 0;

}

#1 神童卐鲜肉@2016-04-01 03:22:01
回复 删除
大神膜拜~~

#2 牛小小小妞@2016-06-03 18:56:27
回复 删除
大神
#3 zhuhaoyang@2016-07-23 18:15:06
回复 删除
膜拜
#4 贾天歌@2016-11-18 17:51:36
回复 删除
回复 #3 zhuhaoyang:大神

查看更多回复
提交回复