Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- #include <algorithm>
- #include <vector>
- #include <iomanip>
- using namespace std;
- int main() {
- float ok=0,nr=0,okdoi=0,rest=0;
- long int n,g,i,j,k=0;
- vector <long int> numerezero;
- vector <long int> numereunu;
- int v[2000];
- float rapzero=0,rapunu=0;
- cin>>n>>g;
- for (i=0;i<n;i++)
- {
- cin>>v[i];
- }
- numereunu.push_back(1);
- numerezero.push_back(0);
- rest=n%g;
- if (rest==0)
- {
- nr=(float)n/(float)g;
- for(k=0;k<(int)nr;k++)
- {
- for (j = k * g; j < (k + 1) * g; j++) {
- if (v[j] == 1) ok++;
- else if (v[j] == 0) okdoi++;
- }
- if (ok == 0) {
- numerezero.push_back(0);
- } else if (ok != 0) {
- numerezero.push_back(1);
- for (j = k * g; j < (k + 1) * g; j++) {
- numerezero.push_back(v[j]);
- }
- }
- if (okdoi == 0) {
- numereunu.push_back(1);
- } else if (okdoi != 0) {
- numereunu.push_back(0);
- for (j = k * g; j < (k + 1) * g; j++) {
- numereunu.push_back(v[j]);
- }
- }
- ok = 0;
- okdoi = 0;
- }
- }
- else {
- nr=((float)n/(float)(g))+1;
- for(k=0;k<(int)nr-1;k++)
- {
- for (j = k * g; j < (k + 1) * g; j++) {
- if (v[j] == 1) ok++;
- else if (v[j] == 0) okdoi++;
- }
- if (ok == 0) {
- numerezero.push_back(0);
- } else if (ok != 0) {
- numerezero.push_back(1);
- for (j = k * g; j < (k + 1) * g; j++) {
- numerezero.push_back(v[j]);
- }
- }
- if (okdoi == 0) {
- numereunu.push_back(1);
- } else if (okdoi != 0) {
- numereunu.push_back(0);
- for (j = k * g; j < (k + 1) * g; j++) {
- numereunu.push_back(v[j]);
- }
- }
- ok = 0;
- okdoi = 0;
- }
- numerezero.push_back(1);
- numereunu.push_back(0);
- for(i=n-rest;i<n;i++)
- {
- numerezero.push_back(v[i]);
- numereunu.push_back(v[i]);
- }
- }
- rapzero=(float)(n)/(float)(numerezero.size());
- rapunu=(float)(n)/(float)(numereunu.size());
- if (rapzero>=rapunu)
- {
- cout<<fixed<<setprecision(2);
- cout<<rapzero<<endl;
- for (i=0;i<numerezero.size();i++)
- { cout<<numerezero[i]<<endl; }
- }
- else
- {
- cout<<fixed<<setprecision(2);
- cout<<rapunu<<endl;
- for (i=0;i<numereunu.size();i++)
- { cout<<numereunu[i]<<endl; }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement