解题思路:
注意事项:
参考代码:
#include<stdio.h>
int v[30],p[30];
long long x[30001];
int main()
{
int n,m,i,j,k;
scanf("%d%d",&n,&m);
for(i=1;i<=m;i++)
scanf("%d%d",&v[i],&p[i]);
for(i=1;i<=n;i++)
if(v[1]<=i)
x[i]=p[1]*v[1];
else
x[i]=0;
for(i=2;i<=m;i++)
for(j=n;j>=v[i];j--)
if(x[j]<x[j-v[i]]+v[i]*p[i])
x[j]=x[j-v[i]]+p[i]*v[i];
printf("%lld",x[n]);
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:668 |
C语言程序设计教程(第三版)课后习题12.6 (C语言代码)浏览:816 |
printf基础练习2 (C语言代码)浏览:648 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1550 |
字符串问题 (C语言代码)浏览:1635 |
printf基础练习2 (C语言代码)浏览:955 |
输出正反三角形 (C语言代码)格式错误!!!浏览:1177 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:504 |
简单的for循环浏览:1496 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:636 |