#include <iostream> #include <vector> using namespace std; int main() { int n, m; cin>>n >>m; vector<vector<int>> nums(n, vector<int>(m)); vector<vector<int>> dp(n, vector<int>(m)); for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++){ cin>>nums[i][j]; } } dp[0][0] = nums[0][0]; for(int i = 1; i < n; i++)dp[i][0] = nums[i][0] + dp[i -1][0]; for(int i = 1; i < m; i++)dp[0][i] = nums[0][i] + dp[0][i - 1]; for(int i = 1; i < n; i++){ for(int j = 1; j < n; j++){ dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) + nums[i][j]; } } cout<<dp[n - 1][m - 1]; return 0; } // 64 位输出请用 printf("%lld")