#include <iostream>
#include <cstring>
#define N 2010
using std::cin;
using std::cout;
int dp[N];
int main()
{
std::ios::sync_with_stdio(false);
cin.tie(nullptr);
memset(dp, 0x3f, sizeof dp);
dp[0] = 0;
// 0. input
int n, m; cin >> n >> m;
int tmp;
// 1. main logic
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= m; j++)
{
cin >> tmp;
dp[j] = std::min(dp[j], dp[j-1]) + tmp;
}
dp[0] = 0x7fffffff;
}
// 2. output
cout << dp[m];
return 0;
}
优化了空间复杂度

京公网安备 11010502036488号