题目描述:
示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大。 每一步可沿左斜线向下或右斜线向下走; 1< 三角形行数< 25; 三角形中的数字为整数< 1000;
代码:
package lanqiao;import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[][] arr = new int[n][n];for(int i = 0;i < n;i ++){for(int j = 0;j <= i;j ++){arr[i][j] = sc.nextInt();}}for(int i = n - 2;i >= 0;i --){for(int j = 0;j <= i;j ++){arr[i][j] += Math.max(arr[i + 1][j],arr[i + 1][j + 1]);}}System.out.println(arr[0][0]);}
}