fork download
  1. #include<stdio.h>
  2. int t,n,a[110][110],i,j,k,l,m,n,p,visited[100][100];
  3. max(int a,int b)
  4. {
  5. return (a>b)?a:b;
  6. }
  7. int solve(int i,int j)
  8. {
  9. int t1,t2,q;
  10. if(i>n)
  11. return 0;
  12. if(visited[i][j]!=0)
  13. return visited[i][j];
  14.  
  15. t1=solve(i+1,j);
  16. t2=solve(i+1,j+1);
  17. q=max(t1,t2)+a[i][j];
  18. visited[i][j]=q;
  19. return q;
  20.  
  21. }
  22. int main()
  23. {
  24. scanf("%d",&t);
  25. while(t--)
  26. {
  27. for(i=1;i<=n;i++)
  28. {
  29. for(j=1;j<=i;j++)
  30. visited[i][j]=0;
  31. }
  32.  
  33. scanf("%d",&n);
  34. for(i=1;i<=n;i++)
  35. {
  36. for(j=1;j<=i;j++)
  37. scanf("%d",&a[i][j]);
  38.  
  39. }
  40. p=solve(1,1);
  41. printf("%d\n",p);
  42. }
  43. return 0;
  44. }
  45.  
Success #stdin #stdout 0s 2332KB
stdin
Standard input is empty
stdout
Standard output is empty