第三次作业

1.1
dp[i][j]表示从起点 (1,1))走到格子 (i,j) 的最小通行费,a[i][j] 为格子 (i,j)的通行费用。
递推方程:dp[i][j]=min(dp[i-1][j],dp[i][j-1])+a[i][j],i>1,j>1)
边界条件:dp[1][1]=a[1][1]
第一行:dp[1][j]=dp[1][j-1]+a[1][j], j>1
第一列:dp[i][1]=dp[i-1][1]+cost[i][1], i>1

1.2
表维度:N*N二维表
填表范围:1<=i<=N,1<=j<=N
填表顺序:从上到下逐行,每行从左向右填写
原问题最优值:表格右下角元素 dp[N][N]

1.3
时间复杂度:O(N2)
空间复杂度:O(N2)

2.1
动态规划就是把一个大问题拆成一个个小问题,先算出小问题的最优结果并记录下来,后面直接拿来用,不用重复计算。这道最低通行费题目,就是一步步算出走到每个格子的最少花费,最后直接得到终点的答案。它适合求最小代价这类问题,关键是找到子问题之间的关系。

posted @ 2026-11-01 21:40  lwq815  阅读(6)  评论(0)    收藏  举报