下面的程序中,二维数组 h 和 v 分别代表网格中水平边的时间消耗和垂直边的时间消耗,索引关系如下:
dis[3][0]-h[3][0]-dis[3][1]-h[3][1]-dis[3][2]-h[3][2]-dis[3][3]
|v[2][0] |v[2][1] |v[2][2] |v[2][3]
dis[2][0]-h[2][0]-dis[2][1]-h[2][1]-dis[2][2]-h[2][2]-dis[2][3]
|v[1][0] |v[1][1] |v[1][2] |v[1][3]
dis[1][0]-h[1][0]-dis[1][1]-h[1][1]-dis[1][2]-h[1][2]-dis[1][3]
|v[0][0] |v[0][1] |v[0][2] |v[0][3]
dis[0][0]-h[0][0]-dis[0][1]-h[0][1]-dis[0][2]-h[0][2]-dis[0][3]
程序使用动态规划计算从左下角到右上角的最小时间消耗,则横线处应该填写下列哪个选项的代码?程序代码如下:
int dis[MAXY][MAXX];
int shortest_path(int x, int y) {
dis[0][0] = 0;
for (int i = 0; i < y; i++)
dis[i + 1][0] = dis[i][0] + v[i][0];
for (int j = 0; j < x; j++)
dis[0][j + 1] = dis[0][j] + h[0][j];
for (int i = 0; i < y; i++)
for (int j = 0; j < x; j++)
____________; // 在此处填写代码
return dis[y][x];
}