• Source
    1. #include "bits/stdc++.h"
    2.  
    3. using namespace std;
    4.  
    5. int main()
    6. {
    7. int tc=0,n,i,avg,sum,a,b,c,len,len1,num,avglen;
    8.  
    9. char avgs[10],str[10],str1[10];
    10.  
    11. while(scanf("%d",&n)&&n)
    12. {
    13. sum = 0;
    14.  
    15. for(i=1; i<=n; i++)
    16. {
    17. scanf("%d",&num);
    18.  
    19. sum+=num;
    20. }
    21.  
    22. printf("Case %d:\n",++tc);
    23.  
    24. bool tag = false;
    25.  
    26. if(sum<0)
    27. {
    28. sum*=-1;
    29.  
    30. tag = true;
    31. }
    32.  
    33. avg = sum/n;
    34.  
    35. sprintf(avgs,"%d",avg);
    36.  
    37. avglen = strlen(avgs);
    38.  
    39. if(sum%n==0)
    40. {
    41. if(tag)
    42. {
    43. printf("- %d\n",avg);
    44. }
    45. else
    46. {
    47. printf("%d\n",avg);
    48. }
    49. }
    50. else if(sum<n)
    51. {
    52. a = __gcd(sum,n);
    53.  
    54. b = sum/a;
    55.  
    56. c = n/a;
    57.  
    58. sprintf(str,"%d",b);
    59.  
    60. sprintf(str1,"%d",c);
    61.  
    62. len = strlen(str);
    63.  
    64. len1 = strlen(str1);
    65.  
    66. if(tag)
    67. {
    68. printf(" ");
    69. }
    70.  
    71. if(len<len1)
    72. {
    73. for(i=1;i<=len1-len;i++)
    74. {
    75. printf(" ");
    76. }
    77. }
    78.  
    79. printf("%d\n",b);
    80.  
    81. if(tag)
    82. {
    83. printf("- ");
    84. }
    85.  
    86. for(i=1; i<=len1; i++)
    87. {
    88. printf("-");
    89. }
    90.  
    91. puts("");
    92.  
    93. if(tag)
    94. {
    95. printf(" ");
    96. }
    97.  
    98. printf("%d\n",c);
    99. }
    100. else
    101. {
    102. a = sum-(n*avg);
    103.  
    104. b = __gcd(a,n);
    105.  
    106. a = a/b;
    107.  
    108. c = n/b;
    109.  
    110. if(tag)
    111. {
    112. printf(" ");
    113. }
    114.  
    115. sprintf(str,"%d",a);
    116.  
    117. sprintf(str1,"%d",c);
    118.  
    119. len = strlen(str);
    120.  
    121. len1 = strlen(str1);
    122.  
    123. if(len<len1)
    124. {
    125. for(i=1; i<=len1-len; i++)
    126. {
    127. printf(" ");
    128. }
    129. }
    130.  
    131. for(i=1;i<=avglen;i++)
    132. {
    133. printf(" ");
    134. }
    135.  
    136. printf("%d\n",a);
    137.  
    138. if(tag)
    139. {
    140. printf("- ");
    141. }
    142.  
    143. printf("%d",avg);
    144.  
    145. for(i=1; i<=len1; i++)
    146. {
    147. printf("-");
    148. }
    149.  
    150. puts("");
    151.  
    152. if(tag)
    153. {
    154. printf(" ");
    155. }
    156.  
    157. for(i=1;i<=avglen;i++)
    158. {
    159. printf(" ");
    160. }
    161.  
    162. printf("%d\n",c);
    163. }
    164. }
    165.  
    166. return 0;
    167. }