第一题:
状态表示:price[i][j],第i堆到第j堆的最小代价
状态方程:min(dp[i][j], f[i][k]+f[k+1][j]+ sum[j]− sum[i−1])(i≤k≤j−1)
边界条件:i==j时,price=0
时间、空间复杂度分析:时间O(n3),空间(n2)
第二题:
动态规划,就是用空间换时间,“瞻前顾后”,不断找到最优解决方案。在做题时最关键是要写出状态方程和边界条件,实现代码就简单了。
434
社区成员
1,011
社区内容
加载中
试试用AI创作助手写篇文章吧