Advertisement
Guest User

Untitled

a guest
Jan 25th, 2020
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.88 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <algorithm>
  4. #include <vector>
  5. #include <iomanip>
  6. using namespace std;
  7.  
  8. int main() {
  9. float ok=0,nr=0,okdoi=0,rest=0;
  10. long int n,g,i,j,k=0;
  11. vector <long int> numerezero;
  12. vector <long int> numereunu;
  13. int v[2000];
  14. float rapzero=0,rapunu=0;
  15.  
  16. cin>>n>>g;
  17. for (i=0;i<n;i++)
  18. {
  19. cin>>v[i];
  20. }
  21.  
  22. numereunu.push_back(1);
  23. numerezero.push_back(0);
  24. rest=n%g;
  25. if (rest==0)
  26. {
  27. nr=(float)n/(float)g;
  28. for(k=0;k<(int)nr;k++)
  29. {
  30. for (j = k * g; j < (k + 1) * g; j++) {
  31. if (v[j] == 1) ok++;
  32. else if (v[j] == 0) okdoi++;
  33. }
  34. if (ok == 0) {
  35. numerezero.push_back(0);
  36. } else if (ok != 0) {
  37. numerezero.push_back(1);
  38. for (j = k * g; j < (k + 1) * g; j++) {
  39. numerezero.push_back(v[j]);
  40. }
  41. }
  42. if (okdoi == 0) {
  43. numereunu.push_back(1);
  44. } else if (okdoi != 0) {
  45. numereunu.push_back(0);
  46. for (j = k * g; j < (k + 1) * g; j++) {
  47. numereunu.push_back(v[j]);
  48. }
  49.  
  50. }
  51. ok = 0;
  52. okdoi = 0;
  53.  
  54. }
  55.  
  56. }
  57.  
  58. else {
  59. nr=((float)n/(float)(g))+1;
  60. for(k=0;k<(int)nr-1;k++)
  61. {
  62. for (j = k * g; j < (k + 1) * g; j++) {
  63. if (v[j] == 1) ok++;
  64. else if (v[j] == 0) okdoi++;
  65. }
  66. if (ok == 0) {
  67. numerezero.push_back(0);
  68. } else if (ok != 0) {
  69. numerezero.push_back(1);
  70. for (j = k * g; j < (k + 1) * g; j++) {
  71. numerezero.push_back(v[j]);
  72. }
  73. }
  74. if (okdoi == 0) {
  75. numereunu.push_back(1);
  76. } else if (okdoi != 0) {
  77. numereunu.push_back(0);
  78. for (j = k * g; j < (k + 1) * g; j++) {
  79. numereunu.push_back(v[j]);
  80. }
  81.  
  82. }
  83. ok = 0;
  84. okdoi = 0;
  85. }
  86. numerezero.push_back(1);
  87. numereunu.push_back(0);
  88. for(i=n-rest;i<n;i++)
  89. {
  90. numerezero.push_back(v[i]);
  91. numereunu.push_back(v[i]);
  92. }
  93. }
  94.  
  95. rapzero=(float)(n)/(float)(numerezero.size());
  96. rapunu=(float)(n)/(float)(numereunu.size());
  97.  
  98. if (rapzero>=rapunu)
  99. {
  100. cout<<fixed<<setprecision(2);
  101. cout<<rapzero<<endl;
  102. for (i=0;i<numerezero.size();i++)
  103. { cout<<numerezero[i]<<endl; }
  104. }
  105. else
  106. {
  107. cout<<fixed<<setprecision(2);
  108. cout<<rapunu<<endl;
  109. for (i=0;i<numereunu.size();i++)
  110. { cout<<numereunu[i]<<endl; }
  111. }
  112.  
  113. return 0;
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement