fork(2) download
  1. #include <iostream>
  2. #include <cmath>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7. int ileTestow;
  8. cin>>ileTestow;
  9. for(int i=0; i<ileTestow; i++)
  10. {
  11. int ileLiczb;
  12. double srednia;
  13. cin>>ileLiczb;
  14. int*tablicaLiczb= new int[ileLiczb];
  15. float suma=0;
  16. for(int j=0; j<ileLiczb; j++)
  17. {
  18. cin>>tablicaLiczb[j];
  19. suma+=tablicaLiczb[j];
  20. }
  21. srednia=suma/ileLiczb;
  22. float pomocnicze2=srednia;
  23. double szukane1,szukane2;
  24. double pomocnicza1=srednia+0.5;
  25. if((round(srednia)==pomocnicza1))
  26. {
  27.  
  28. szukane1=ceil(pomocnicze2);
  29. szukane2=floor(pomocnicze2);
  30. int odleglosc1=abs(szukane1-tablicaLiczb[0]),ktoryElement=tablicaLiczb[0],indeks;
  31.  
  32. for(int i=0; i<ileLiczb; i++)
  33. {
  34. //cout<<abs(szukane1-tablicaLiczb[i])<<endl;
  35. if(abs(szukane1-tablicaLiczb[i])<odleglosc1)
  36. {
  37. odleglosc1=abs(szukane1-tablicaLiczb[i]);
  38. ktoryElement=tablicaLiczb[i];
  39. indeks=i;
  40. }
  41. }
  42. //cout<<ktoryElement<<endl;
  43. int odleglosc2=abs(szukane2-tablicaLiczb[0]),ktoryElement1=tablicaLiczb[0],indeks1;
  44.  
  45. for(int i=0; i<ileLiczb; i++)
  46.  
  47. {
  48. //cout<<abs(szukane2-tablicaLiczb[i])<<endl;
  49. if(abs(szukane2-tablicaLiczb[i])<odleglosc2)
  50. {
  51. odleglosc2=abs(szukane1-tablicaLiczb[i]);
  52. ktoryElement1=tablicaLiczb[i];
  53. indeks1=i;
  54. }
  55. }
  56. //cout<<ktoryElement1<<endl;
  57.  
  58. if(indeks1>indeks)
  59. cout<<ktoryElement<<endl;
  60. else
  61. cout<<ktoryElement1<<endl;
  62. }
  63.  
  64. else
  65. {
  66.  
  67. szukane1=round(pomocnicze2);
  68. int odleglosc=abs(szukane1-tablicaLiczb[0]),ktoryElement=tablicaLiczb[0];
  69.  
  70. for(int i=0; i<ileLiczb; i++)
  71. {
  72. //cout<<abs(szukane1-tablicaLiczb[i])<<endl;
  73. if(abs(szukane1-tablicaLiczb[i])<odleglosc)
  74. {
  75. odleglosc=abs(szukane1-tablicaLiczb[i]);
  76. ktoryElement=tablicaLiczb[i];
  77. }
  78. }
  79. cout<<ktoryElement<<endl;
  80. }
  81.  
  82. }
  83.  
  84. return 0;
  85. }
  86.  
Success #stdin #stdout 0s 4548KB
stdin
2
7 3 1 2 4 5 6 4
7 4 1 2 3 5 6 4
stdout
4
4