def compute(matrix, n): dp_matrix = [[0, 0, 0]] for j in range(1, n): delta_i = [] for i in range(3): d0 = abs(matrix[i][j] - matrix[0][j-1]) + dp_matrix[-1][0] d1 = abs(matrix[i][j] - matrix[1][j-1]) + dp_matrix[-1][1] d2 = abs(matrix[i][j] - matrix[2][j-1]) + dp_matrix[-1][2] delta_i.append(min(d0, d1, d2)) dp_matrix.append(delta_i) print(min(dp_matrix[-1]))