View Code of Problem 65

#include<stdio.h>
int a[1000][1000];
int main()
{
	int b,t,a1,b1;
	int i,j,n,m,k;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&m);
		for(j=0;j<m;j++)
		{
			for(k=0;k<=j;k++)
			scanf("%d",&a[j][k]);
		}
		for(j=1;j<m;j++)
		{
			for(k=0;k<=j;k++)
			{
				if(k==0)
				{
					a[j][k]+=a[j-1][0];
				}
				else if(k==j)
				{
					a[j][k]+=a[j-1][k-1];
				}
				else if(a[j-1][k-1]>=a[j-1][k])
				{
					a[j][k]+=a[j-1][k-1];
				}
				else if(a[j-1][k-1]<a[j-1][k])
				{
					a[j][k]+=a[j-1][k];
				}
			}
		}
		int max=-9999;
		for(j=0;j<m;j++)
		{
			if(a[m-1][j]>max)
			max=a[m-1][j];
			
		}
		printf("%d\n",max);
	}
}

Double click to view unformatted code.


Back to problem 65