解题思路:动态规划
参考代码:
#include <stdio.h> #include <string.h> #include <algorithm> using namespace std; int n,m;//n:钱 m:物品个数 int dp[30005]; int v[30];//价格 int p[30]; //重要度 int main(){ scanf("%d%d",&n,&m); memset(v,0,sizeof(v)); memset(p,0,sizeof(p)); memset(dp,0,sizeof(dp)); for(int i=1;i<=m;i++){ scanf("%d%d",&v[i],&p[i]); } for(int i=1;i<=m;i++){ for(int j=n;j>=v[i];j--){ dp[j]=max(dp[j],dp[j-v[i]]+p[i]*v[i]); } } printf("%d",dp[n]); return 0; }
0.0分
3 人评分
C语言程序设计教程(第三版)课后习题6.1 (C++代码)__gcd()是已经写好的函数,可以直接使用浏览:1997 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:744 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1019 |
C语言训练-角谷猜想 (C++代码)(3N+1问题)浏览:1850 |
母牛的故事 (C语言代码)浏览:478 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:562 |
WU-图形输出 (C++代码)浏览:836 |
wu-理财计划 (C++代码)浏览:907 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:600 |
母牛的故事 (C语言代码)浏览:1045 |