Question: 
Write a function to find the maximum total path sum in the given triangle.


Model's Code:
def max_path_sum(triangle, row, col):
    for r in range(row, -1, -1):
        for c in range(r + 1):
            if r == row:
                continue
            triangle[r][c] += max(triangle[r + 1][c], triangle[r + 1][c + 1])
    return triangle[0][0]



Sample Correct Code:
def max_path_sum(tri, m, n): 
	for i in range(m-1, -1, -1): 
		for j in range(i+1): 
			if (tri[i+1][j] > tri[i+1][j+1]): 
				tri[i][j] += tri[i+1][j] 
			else: 
				tri[i][j] += tri[i+1][j+1] 
	return tri[0][0]


Asserts:
assert max_path_sum([[1, 0, 0], [4, 8, 0], [1, 5, 3]], 2, 2) == 14
assert max_path_sum([[13, 0, 0], [7, 4, 0], [2, 4, 6]], 2, 2) == 24 
assert max_path_sum([[2, 0, 0], [11, 18, 0], [21, 25, 33]], 2, 2) == 53


Tests:
Test 1 of 3: PASS
Test 2 of 3: PASS
Test 3 of 3: PASS

Test 147 of 974: 106/147 (72.10884353741497%): success