动态规划解投资问题"/>
7. 动态规划解投资问题
投资问题
1. 问题
2. 解析
3. 设计
for (k = 2; k <= m; ++k) {// 从第二个阶段到最后一个阶段for (i = 0; i <= n; ++i) { // 遍历所有的投资金额t[i] = f[i];// 第k阶段初始最优解 认为是把所有金额投给第k个项目cin >> f[i];// 输入第k个项目的投资收益函数a[k][i] = 0;// 初始化时认为 有i万元资金时 给第k个项目不投资 收益最大}for (i = 0; i <= n; ++i) {for (j = 0; j <= i; ++j) {// 遍历给定金额i下的分配情况if (f[j] + g[i - j] > t[i]) {// 如果此分配方案收益更大 则更新分配方案和最大收益t[i] = f[j] + g[i - j];a[k][i] = j;}}}for (i = 0; i <= n; ++i)// 更新分配方案g[i] = t[i];}
4. 分析
5. 源码
更多推荐
7. 动态规划解投资问题
发布评论