Triangle - Array - Medium - LeetCode
💻 coding

Triangle - Array - Medium - LeetCode

1 min read 142 words
1 min read
ShareWhatsAppPost on X
  • 1The problem involves finding the minimum path sum in a triangle from top to bottom.
  • 2You can only move to adjacent numbers in the row below during the path.
  • 3The solution achieves a time complexity of O(m*n) and a space complexity of O(1).

AI-generated summary · May not capture all nuances

Key Insight
AskGif

"The problem involves finding the minimum path sum in a triangle from top to bottom."

Triangle - Array - Medium - LeetCode

Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below.

For example, given the following triangle

[ [2], [3,4], [6,5,7], [4,1,8,3] ] The minimum path sum from top to bottom is 11 (i.e., 2 + 3 + 5 + 1 = 11).

Note:

Bonus point if you are able to do this using only O(n) extra space, where n is the total number of rows in the triangle.

public class Solution {
 public int MinimumTotal(IList<IList<int>> triangle) {
 int rows = triangle.Count();
 
 for(int i=1;i<rows;i++){
 for(int j=0;j<triangle[i].Count();j++){
 if(j==0 || j == triangle[i].Count()-1){
 if(j > triangle[i-1].Count()-1){
 triangle[i][j]+=triangle[i-1][j-1];
 }
 else{
 triangle[i][j]+=triangle[i-1][j];
 } 
 }
 else{
 triangle[i][j] += Math.Min(triangle[i-1][j-1], triangle[i-1][j]);
 }
 }
 
 }
 
 int min = int.MaxValue;
 
 for(int i=0;i<triangle[rows-1].Count();i++){
 min = Math.Min(min, triangle[rows-1][i]);
 }
 
 return min;
 } 
}

Time Complexity: O(m*n)

Space Complexity: O(1)

Enjoyed this article?

Share it with someone who'd find it useful.

ShareWhatsAppPost on X

sumitc91

Published on 17 November 2020 · 1 min read · 142 words

Part of AskGif Blog · coding

You might also like

Triangle - Array - Medium - LeetCode | AskGif Blog