View Code of Problem 65

#include<stdio.h>
#include<malloc.h>
#include<string.h>
#include<math.h>



int main()
{
	int t;
	scanf("%d", &t);
	while (t--) {
		int n;
		scanf("%d", &n);

		int **a = (int **)malloc((n+10) * sizeof(int *));
		for (int i = 0;i <= n;i++)
			a[i] = (int *)malloc((n+10) * sizeof(int));
		for (int i = 1;i <= n;i++)
			for (int j = 1;j <= i;j++)
				scanf("%d", &a[i][j]);
		for (int i = n - 1;i >= 1;i--)
			for (int j = 1;j <= i;j++)
				a[i][j] += (a[i + 1][j] > a[i + 1][j + 1] ? a[i + 1][j] : a[i + 1][j + 1]);
		printf("%d\n", a[1][1]);
	}
	

}

Double click to view unformatted code.


Back to problem 65