N, M = map(int, input().split()) A = [list(map(int, input().split())) for _ in range(N)] dp = [[10**19]*M for _ in range(N+1)] for i, a in enumerate(A[0]): dp[1][i] = a minimum = min(dp[1]) for n in range(1,N): mini = min(dp[n]) for m in range(M): if dp[n][m] == mini: dp[n+1][m] = mini + A[n][m] else: dp[n+1][m] = min(dp[n][m]+A[n][m], mini+A[n-1][m]+A[n][m]) if N == 1: print(0) else: print(min(dp[N]))