fork download
  1. #include<stdio.h>
  2. #include<string.h>
  3.  
  4.  
  5. int take(int );
  6.  
  7. int *elements;
  8. int *total;
  9.  
  10. int num;
  11.  
  12. int main()
  13. {
  14.  
  15. int test_cases;
  16. //printf("Enter Number Of Test Cases :");
  17. scanf("%d" , &test_cases);
  18. int no_of_monsters;
  19. int temp ;
  20. int k = 1;
  21. while(test_cases--){
  22.  
  23. //printf("Enter Number Of Monsters :");
  24. scanf("%d" , &no_of_monsters);
  25.  
  26. num = no_of_monsters;
  27.  
  28. int array[no_of_monsters + 1];
  29. int maxarray[no_of_monsters + 1];
  30.  
  31. elements = array;
  32. total = maxarray;
  33.  
  34. memset(array , 0 , sizeof(array));
  35. memset(maxarray,-1,sizeof(maxarray));
  36. temp = 1;
  37. while(temp<=no_of_monsters)
  38. {
  39.  
  40. scanf("%d" , &array[temp]);
  41. temp++;
  42.  
  43.  
  44. }
  45.  
  46.  
  47. int i = 0;
  48. for(i = 0 ; i <=no_of_monsters;i++)
  49. {
  50.  
  51. //printf("%d " , array[i]);
  52.  
  53. }
  54.  
  55.  
  56. //printf("\n\n\n");
  57.  
  58.  
  59. int y = take(1);
  60. int z = take(2);
  61.  
  62. if(y>z)
  63. printf("Case %d: %d\n" , k ,y);
  64. else
  65. printf("Case %d: %d\n" , k ,z);
  66.  
  67. k++;
  68.  
  69. }
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78. }
  79.  
  80. int take(int i)
  81. {
  82.  
  83. if(i>num)
  84. return 0;
  85.  
  86.  
  87. if(i>num - 2)
  88. {
  89. total[i] = 0;
  90.  
  91. //printf(".. %d %d\n" , i , total[i]);
  92.  
  93. if(i>num)
  94. return 0;
  95.  
  96. return elements[i];
  97.  
  98. }
  99.  
  100.  
  101.  
  102. int x = 0;
  103.  
  104. //printf("...... %d ... \n" , i);
  105.  
  106.  
  107.  
  108. int iftaken = take(i+2);
  109.  
  110.  
  111.  
  112. x = iftaken;
  113.  
  114.  
  115.  
  116.  
  117. int iftaken2 = take(i + 3);
  118.  
  119.  
  120. if(iftaken2 > iftaken)
  121. x = iftaken2;
  122.  
  123. total[i] = x ;
  124.  
  125. // printf("%d %d\n" , i , total[i]);
  126.  
  127. return (x + elements[i]);
  128.  
  129. }
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
Success #stdin #stdout 0s 9432KB
stdin
100
5
2 3 1 5 4 
5
2 1 4 5 3 
5
3 5 4 1 2 
5
4 2 1 3 5 
5
1 4 2 3 5 
5
2 5 1 4 3 
5
3 4 1 2 5 
5
5 2 4 1 3 
5
5 4 3 1 2 
5
2 1 4 3 5 
5
2 3 5 1 4 
5
5 4 3 2 1 
5
1 3 5 2 4 
5
2 1 3 5 4 
5
2 5 3 4 1 
5
1 4 3 5 2 
5
4 2 3 1 5 
5
3 5 1 2 4 
5
2 4 1 3 5 
5
4 1 5 2 3 
5
1 2 3 5 4 
5
1 2 4 3 5 
5
3 1 4 2 5 
5
1 3 2 5 4 
5
2 4 5 3 1 
5
3 4 2 5 1 
5
4 3 5 2 1 
5
2 5 4 1 3 
5
3 2 1 4 5 
5
2 5 1 4 3 
5
1 4 3 5 2 
5
4 1 5 3 2 
5
5 1 4 3 2 
5
1 4 3 5 2 
5
1 5 4 3 2 
5
2 1 3 5 4 
5
2 4 5 3 1 
5
2 4 1 3 5 
5
1 2 3 4 5 
5
3 5 4 2 1 
5
3 2 5 4 1 
5
5 4 2 1 3 
5
5 4 3 1 2 
5
3 1 2 4 5 
5
4 5 2 1 3 
5
4 2 3 1 5 
5
4 1 2 3 5 
5
3 2 5 1 4 
5
3 4 1 2 5 
5
3 2 4 1 5 
5
2 4 1 5 3 
5
1 3 2 4 5 
5
3 2 5 1 4 
5
3 2 5 4 1 
5
1 5 4 2 3 
5
2 1 5 3 4 
5
3 5 2 1 4 
5
3 5 1 4 2 
5
3 2 4 5 1 
5
5 2 1 4 3 
5
2 1 4 3 5 
5
1 3 5 4 2 
5
2 1 3 5 4 
5
1 3 5 2 4 
5
3 4 5 2 1 
5
2 1 3 4 5 
5
5 3 4 2 1 
5
5 1 2 4 3 
5
3 2 4 1 5 
5
5 1 2 3 4 
5
2 5 3 4 1 
5
5 2 4 1 3 
5
2 5 4 1 3 
5
3 5 1 4 2 
5
3 5 1 4 2 
5
2 5 4 1 3 
5
4 1 2 5 3 
5
5 2 1 3 4 
5
5 1 4 3 2 
5
4 1 3 2 5 
5
4 3 1 5 2 
5
3 1 5 4 2 
5
2 3 1 4 5 
5
1 2 3 4 5 
5
2 4 1 3 5 
5
5 4 2 3 1 
5
3 2 1 5 4 
5
2 1 4 5 3 
5
4 5 1 3 2 
5
3 4 2 1 5 
5
4 1 3 5 2 
5
2 5 3 1 4 
5
4 3 5 1 2 
5
5 3 2 1 4 
5
3 2 1 5 4 
5
5 2 3 4 1 
5
5 3 1 2 4 
5
2 3 1 5 4 
5
1 4 3 5 2 
5
5 4 3 2 1 
stdout
Case 1: 8
Case 2: 9
Case 3: 9
Case 4: 10
Case 5: 9
Case 6: 9
Case 7: 9
Case 8: 12
Case 9: 10
Case 10: 11
Case 11: 11
Case 12: 9
Case 13: 10
Case 14: 9
Case 15: 9
Case 16: 9
Case 17: 12
Case 18: 9
Case 19: 9
Case 20: 12
Case 21: 8
Case 22: 10
Case 23: 12
Case 24: 8
Case 25: 8
Case 26: 9
Case 27: 10
Case 28: 9
Case 29: 9
Case 30: 9
Case 31: 9
Case 32: 11
Case 33: 11
Case 34: 9
Case 35: 8
Case 36: 9
Case 37: 8
Case 38: 9
Case 39: 9
Case 40: 8
Case 41: 9
Case 42: 10
Case 43: 10
Case 44: 10
Case 45: 9
Case 46: 12
Case 47: 11
Case 48: 12
Case 49: 9
Case 50: 12
Case 51: 9
Case 52: 8
Case 53: 12
Case 54: 9
Case 55: 8
Case 56: 11
Case 57: 9
Case 58: 9
Case 59: 8
Case 60: 9
Case 61: 11
Case 62: 8
Case 63: 9
Case 64: 10
Case 65: 9
Case 66: 10
Case 67: 10
Case 68: 10
Case 69: 12
Case 70: 11
Case 71: 9
Case 72: 12
Case 73: 9
Case 74: 9
Case 75: 9
Case 76: 9
Case 77: 9
Case 78: 10
Case 79: 11
Case 80: 12
Case 81: 9
Case 82: 10
Case 83: 8
Case 84: 9
Case 85: 9
Case 86: 8
Case 87: 8
Case 88: 9
Case 89: 8
Case 90: 10
Case 91: 9
Case 92: 9
Case 93: 11
Case 94: 11
Case 95: 8
Case 96: 9
Case 97: 10
Case 98: 8
Case 99: 9
Case 100: 9