From 4806c6ecc9ded259216fc7e8b0e9e28e4ff9c906 Mon Sep 17 00:00:00 2001 From: dhruvil15 <76967484+dhruvil15@users.noreply.github.com> Date: Tue, 21 Apr 2026 20:09:21 -0400 Subject: [PATCH] Complete24_25 --- Problem24.java | 33 +++++++++++++++++++++++++++++++++ Problem25.java | 24 ++++++++++++++++++++++++ Sample.java | 7 ------- 3 files changed, 57 insertions(+), 7 deletions(-) create mode 100644 Problem24.java create mode 100644 Problem25.java delete mode 100644 Sample.java diff --git a/Problem24.java b/Problem24.java new file mode 100644 index 00000000..6efaccb8 --- /dev/null +++ b/Problem24.java @@ -0,0 +1,33 @@ +class Solution { + public int minFallingPathSum(int[][] matrix) { + if (matrix == null || matrix.length == 0) { + return 0; + } + + int n = matrix.length; + int min = Integer.MAX_VALUE; + + int[][] dp = new int[n][n]; + for(int i = 0; i < n; i++) { + dp[0][i] = matrix[0][i]; + } + + for (int i = 1; i < n; i++) { + for (int j = 0; j < n; j++ ) { + if (j == 0) { + dp[i][j] = matrix[i][j] + Math.min(dp[i-1][j], dp[i-1][j+1]); + } else if (j == n - 1) { + dp[i][j] = matrix[i][j] + Math.min(dp[i-1][j-1], dp[i-1][j]); + } else { + dp[i][j] = matrix[i][j] + Math.min(dp[i-1][j+1], Math.min(dp[i-1][j-1], dp[i-1][j])); + } + } + } + + for (int i = 0; i