fork(16) download
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int t;
  6. int n,max,sum,x,k;
  7. int a[100][100];
  8. int i,j;
  9. scanf("%d",&t);
  10. if(t>1000||t<1)
  11. return 0;
  12. while(t--){
  13. max=0;
  14. //printf("-------------- INPUT ------------------\n");
  15. scanf("%d",&n);
  16. if(n>100||n<1)
  17. continue;
  18. for(i=1;i<=n;i++){
  19. for(j=0;j<i;j++){
  20. scanf("%d",&a[i-1][j]);
  21. if(a[i-1][j]>99||a[i-1][j]<0)
  22. return 0;
  23. }
  24. }
  25. //printf("------------- OUTPUT -------------------\n");
  26. if(n==1){
  27. printf("%d\n",a[0][0]);
  28. continue;
  29. }
  30. for(k=n-1;k>=0;k--){
  31. for(j=0;j<k;j++){
  32. sum=0;
  33. for(i=k;i>=0;i--){
  34. if(i==k){
  35. sum+= a[i][j]>a[i][j+1]? a[i][j]:a[i][j+1];
  36. //printf("----adding %d,--- j=%d,---i=%d\n",sum,j,i);
  37. }
  38. else{
  39. x= j<=i? 0:(j-i);
  40. //printf("----adding %d,--- j=%d,---i=%d\n",a[i][j-x],j,i);
  41. sum+= a[i][j-x];
  42. }
  43. }
  44. if(sum>max)
  45. max=sum;
  46. //printf(" Sum %d = %d\n",j,sum);
  47. }
  48. }
  49. printf("%d\n",max);
  50. //******************************
  51. }
  52. return 0;
  53. }
Success #stdin #stdout 0s 2900KB
stdin
1
3
1
2 1
5 4 3
stdout
8