算法分析与实践作业七
1. 问题
设共有m万元,有n项投资,函数fi(x)表示将x万元投入第i项项目所产生的效益,i=1,2,…,n.问:
如何分配这m元钱,使得投资总效益最高?
2. 解析



3. 设计
for (int k = 1; k <= n; k++)
for (int x = 1; x <= m; x++)
for (int i = 0; i <= x; i++)
if (dp[k - 1][x - i] + f[k][i] >= dp[k][x]) {
dp[k][x] = dp[k - 1][x - i] + f[k][i];
x[k][x] = i;
}
4. 分析
时间复杂度为O(n*m*m)

5. 源码
github地址:https://github.com/122cmy/myGitTemp7
博客地址:https://www.cnblogs.com/122cmy/

浙公网安备 33010602011771号