517639003 2018-01-23 23:54:26
点我顶贴
收藏
删除
#include<stdio.h>
int dp[30001], v[26], w[26];
int N, m;
int main()
{
scanf("%d%d",&N,&m) ;
int i, j;
for(i = 0; i < m; i++)
scanf("%d%d",&v[i],&w[i]);
dp[0] = 0;
for(i = 0; i < m; i++)
for(j = N; j >= v[i]; j--)
dp[j] = (dp[j])>(dp[j-v[i]] + v[i] * w[i])?dp[j]:dp[j-v[i]] + v[i] * w[i];
printf("%d\n",dp[N]);
return 0;
}