#include long long int a[1003][1003]; long long int dp[1003][1003]; int main() { long long int n, m; scanf("%lld %lld", &n, &m); long long int i, j; for (i = 0; i < n; i++) for (j = 0; j < m; j++) scanf("%lld", &a[i][j]); for (j = 0; j < m; j++) dp[0][j] = a[0][j]; long long int min = 0; for (i = 1; i < n; i++) { for (j = 0; j < m; j++) dp[i][j] = dp[i - 1][j] + a[i][j]; min = 1e18; for (j = 0; j < m; j++) if (min > dp[i][j]) min = dp[i][j]; for (j = 0; j < m; j++) if (dp[i][j] > min + a[i][j]) dp[i][j] = min + a[i][j]; } printf("%lld\n", min); return 0; }