如题,我写了个 dp 的初始化,但是很离奇,我只是把 dp[0][0][0] = 0,但是这句话执行之后整个 dp[x][x][0] 都变成了 0。
for (int i = 0; i <= m; i++) {
for (int j = 0; j < k; j++) {
dp[i][j][0] = INF; // 全部为极大值
}
}
for (int i = 0; i <= m; i++) { // 输出测试
for (int j = 0; j < k; j++) {
cout << dp[i][j][0] << ' ';
}
cout << '\n';
}
dp[0][0][0] = 0;
for (int i = 0; i <= m; i++) { // 输出测试
for (int j = 0; j < k; j++) {
cout << dp[i][j][0] << ' ';
}
cout << '\n';
}
输出的结果(m = 4 k = 3)是
1000000000 1000000000 1000000000
1000000000 1000000000 1000000000
1000000000 1000000000 1000000000
1000000000 1000000000 1000000000
1000000000 1000000000 1000000000
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0