#include <iostream> #include <string> using namespace std; int main() { int suma, trzy, roznica, l_liter, bity, trojki; string litery = "acgo", ciag, wyjscie; cin >> l_liter; //l_liter = 1; bity = 8*l_liter; trzy = 3*l_liter; cin >> ciag; //ciag = "00011000"; suma = 0; for (int i=0; i<bity; i++){ if (static_cast<int>(ciag[i])==int('1')) suma ++; } if (suma<trzy) { cout << "NIE"; } else if (suma>2*trzy){ cout << "NIE"; } else { wyjscie = ""; roznica = suma-trzy; trojki = roznica/3; if (trojki>0) { for (int i=0; i<trojki; i++){ wyjscie += litery[3]; } wyjscie += litery[roznica%3]; for (int i=0; i<l_liter-trojki-1; i++){ wyjscie += litery[0]; } } cout << wyjscie; } return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | #include <iostream> #include <string> using namespace std; int main() { int suma, trzy, roznica, l_liter, bity, trojki; string litery = "acgo", ciag, wyjscie; cin >> l_liter; //l_liter = 1; bity = 8*l_liter; trzy = 3*l_liter; cin >> ciag; //ciag = "00011000"; suma = 0; for (int i=0; i<bity; i++){ if (static_cast<int>(ciag[i])==int('1')) suma ++; } if (suma<trzy) { cout << "NIE"; } else if (suma>2*trzy){ cout << "NIE"; } else { wyjscie = ""; roznica = suma-trzy; trojki = roznica/3; if (trojki>0) { for (int i=0; i<trojki; i++){ wyjscie += litery[3]; } wyjscie += litery[roznica%3]; for (int i=0; i<l_liter-trojki-1; i++){ wyjscie += litery[0]; } } cout << wyjscie; } return 0; } |