fork(16) download
  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cmath>
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9. int sum,test,num,avg,f1,temp,caseno=0;
  10. while(scanf("%d", &test)!=0)
  11. {
  12. if(test==0)
  13. break;
  14. caseno++;
  15. sum=0;
  16. for(int k=0;k<test;k++)
  17. {
  18. scanf("%d", &num);
  19. sum+=num;
  20. }
  21. avg=sum/test;
  22. printf("Case %d:\n",caseno);
  23. if(sum%test!=0)
  24. {
  25. f1=sum%test;
  26. if(test%f1==0)
  27. {
  28. test=test/f1;
  29. if(avg<0)
  30. {
  31. avg=abs(avg);
  32. test=abs(test);
  33. printf(" 1\n");
  34. printf("- %d-\n",avg);
  35. printf(" %d",test);
  36. }
  37. else
  38. {
  39. printf(" 1\n");
  40. printf("%d-\n",avg);
  41. printf(" %d",test);
  42. }
  43. }
  44. else
  45. {
  46. temp=f1/2;
  47. for(int j=2;j<=temp;j++)
  48. {
  49. if(f1%j==0&&test%j==0)
  50. {
  51. f1=f1/j;
  52. test=temp/j;
  53. }
  54. }
  55. if(avg<0)
  56. {
  57. avg=abs(avg);
  58. f1=abs(f1);
  59. test=abs(test);
  60. printf(" f1\n");
  61. printf("- %d-\n",avg);
  62. printf(" %d",test);
  63. }
  64. else
  65. {
  66. printf(" f1\n");
  67. printf("%d-\n",avg);
  68. printf(" %d",test);
  69. }
  70. }
  71. }
  72. else
  73. {
  74. if(avg<0)
  75. {
  76. avg=abs(avg);
  77. printf("- %d",avg);
  78. }
  79. else
  80. printf("%d",avg);
  81. }
  82. printf("\n");
  83. }
  84. return 0;
  85. }
Success #stdin #stdout 0s 3344KB
stdin
3 1 2 3
3 -1 -2 -3
3 1 2 4
4 2 4 6 10
3 -1 -2 -4
10 1 1 1 1 1 1 1 1 1 4
10 1 -1 1 -1 1 -1 -1 1 1 1
10 1 -1 1 -1 1 -1 -1 1 1 -3
0
stdout
Case 1:
2
Case 2:
- 2
Case 3:
 1
2-
 3
Case 4:
 1
5-
 2
Case 5:
   1
- 2-
   3
Case 6:
 f1
1-
 10
Case 7:
 1
0-
 5
Case 8:
 1
0-
 -5