Niestety, nie byliśmy w stanie w pełni poprawnie wyświetlić tego pliku, ponieważ nie jest zakodowany w UTF-8.
Możesz pobrać ten plik i spróbować otworzyć go samodzielnie.
//Agata Majewska 14.12.2022 //Muzyka pop 2 [C] #include <iostream> //#include <string.h> //#include <cstdlib> //#include <string> using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin>>n; int bin[21]; //int bin2[21]; int tab[n]; int i=0,ii,j,pom; int razem=0; while(razem<n){ tab[i]=0; j=0; //dl=0; //nie rozpoznaje funkcji itoa, wiec napisze sama cos w podobie pom = i+1; ii=0; while(pom){ //dopoki liczba bedzie rozna od zera //ze strony: https://www.algorytm.edu.pl/funkcje/69-zamiana-liczby-dziesietnej-na-binarna.html bin[ii++]=pom%2; pom/=2; } ii--; //itoa(i+1,bin,2); while(j<=ii){ if(bin[j]==1){ tab[i]++; } j++; } razem+=tab[i]; //cout<<i+1<<": "<<bin<<" "<<tab[i]<<"\n"; //cout<<"razem = "<<razem<<"\n"; i++; } if(razem==n){ //odpowiedz cout<<i<<"\n"; for(i;i>1;i--){ cout<<i<<" "; } cout<<i; } else{ //1cout<<"razem = "<<razem<<" tab[i-1] = "<<tab[i-1]; razem = razem-tab[i-1]; int z=-1; i--; int je = n - razem; //itoa(i,bin,2); pom = i; ii=0; while(pom){ //dop�ki liczba b�dzie r�na od zera //ze strony: https://www.algorytm.edu.pl/funkcje/69-zamiana-liczby-dziesietnej-na-binarna.html bin[ii++]=pom%2; pom/=2; } ii--; j=0; //j = strlen(bin)-1; //cout<<" je = "<<je<<"\n"; while((je>0)&&(j<ii)){ if(bin[j]==0){ je--; bin[j]=1; } j++; } if(j>=ii){ for(int iii=i-1;iii>=0;iii--){ if(tab[iii]==je){ z = iii+1; break; } } } cout<<i<<"\n"; //cout<<strtol(bin,NULL,2); int a=0; int dw=1; for(int iii=0;iii<=ii;iii++){ //cout<<bin[iii]<<" dw = "<<dw<<" "; if(bin[iii]==1){ a=a+dw; } dw*=2; //cout<<"a = "<<a<<"\n"; } //cout<<"\n"; cout<<a; i--; if(z==-1){ for(i;i>0;i--){ cout<<" "<<i; } } else{ for(i++;i>0;i--){ if(i!=z){ cout<<" "<<i; } } } } 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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 | //Agata Majewska 14.12.2022 //Muzyka pop 2 [C] #include <iostream> //#include <string.h> //#include <cstdlib> //#include <string> using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin>>n; int bin[21]; //int bin2[21]; int tab[n]; int i=0,ii,j,pom; int razem=0; while(razem<n){ tab[i]=0; j=0; //dl=0; //nie rozpoznaje funkcji itoa, wiec napisze sama cos w podobie pom = i+1; ii=0; while(pom){ //dopoki liczba bedzie rozna od zera //ze strony: https://www.algorytm.edu.pl/funkcje/69-zamiana-liczby-dziesietnej-na-binarna.html bin[ii++]=pom%2; pom/=2; } ii--; //itoa(i+1,bin,2); while(j<=ii){ if(bin[j]==1){ tab[i]++; } j++; } razem+=tab[i]; //cout<<i+1<<": "<<bin<<" "<<tab[i]<<"\n"; //cout<<"razem = "<<razem<<"\n"; i++; } if(razem==n){ //odpowiedz cout<<i<<"\n"; for(i;i>1;i--){ cout<<i<<" "; } cout<<i; } else{ //1cout<<"razem = "<<razem<<" tab[i-1] = "<<tab[i-1]; razem = razem-tab[i-1]; int z=-1; i--; int je = n - razem; //itoa(i,bin,2); pom = i; ii=0; while(pom){ //dop�ki liczba b�dzie r�na od zera //ze strony: https://www.algorytm.edu.pl/funkcje/69-zamiana-liczby-dziesietnej-na-binarna.html bin[ii++]=pom%2; pom/=2; } ii--; j=0; //j = strlen(bin)-1; //cout<<" je = "<<je<<"\n"; while((je>0)&&(j<ii)){ if(bin[j]==0){ je--; bin[j]=1; } j++; } if(j>=ii){ for(int iii=i-1;iii>=0;iii--){ if(tab[iii]==je){ z = iii+1; break; } } } cout<<i<<"\n"; //cout<<strtol(bin,NULL,2); int a=0; int dw=1; for(int iii=0;iii<=ii;iii++){ //cout<<bin[iii]<<" dw = "<<dw<<" "; if(bin[iii]==1){ a=a+dw; } dw*=2; //cout<<"a = "<<a<<"\n"; } //cout<<"\n"; cout<<a; i--; if(z==-1){ for(i;i>0;i--){ cout<<" "<<i; } } else{ for(i++;i>0;i--){ if(i!=z){ cout<<" "<<i; } } } } return 0; } |