#include <iostream> using namespace std; int liczba; int ile_cyfr=0; int licz[1000]; int bin[1000]; int pol1[101]; int pol2[101]; int main() { cin>>liczba; for(int i=0;liczba>=1;i++) { licz[i]=liczba%2; liczba=liczba/2; ile_cyfr=i; } int a=0; /*for(int i=ile_cyfr;i>=0;i--) { cout<<licz[i]<<" indeks ---> "<<i<<endl; bin[a]=licz[i]; a++; }*/ for(int i=0;i<101;i++) { pol1[i]=-1; pol2[i]=-1; } int k=0; for(int i=0;i<ile_cyfr*2;i++) { pol1[i]=i+2; i++; if(licz[k]==1) { pol1[i]=ile_cyfr*2+1; } else { pol1[i]=-2; } k++; } for(int i=0;i<ile_cyfr*2+1;i++) { pol2[i]=i+1; } pol1[ile_cyfr*2]=-2; pol1[ile_cyfr*2+1]=-2; pol2[ile_cyfr*2+1]=-2; //cout<<endl; cout<<ile_cyfr*2+2<<endl; for(int i=0;i<=ile_cyfr*2+2-1;i++) { cout<<pol1[i]+1<<" "<<pol2[i]+1<<" "<<endl; } //cout<<endl; }
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 | #include <iostream> using namespace std; int liczba; int ile_cyfr=0; int licz[1000]; int bin[1000]; int pol1[101]; int pol2[101]; int main() { cin>>liczba; for(int i=0;liczba>=1;i++) { licz[i]=liczba%2; liczba=liczba/2; ile_cyfr=i; } int a=0; /*for(int i=ile_cyfr;i>=0;i--) { cout<<licz[i]<<" indeks ---> "<<i<<endl; bin[a]=licz[i]; a++; }*/ for(int i=0;i<101;i++) { pol1[i]=-1; pol2[i]=-1; } int k=0; for(int i=0;i<ile_cyfr*2;i++) { pol1[i]=i+2; i++; if(licz[k]==1) { pol1[i]=ile_cyfr*2+1; } else { pol1[i]=-2; } k++; } for(int i=0;i<ile_cyfr*2+1;i++) { pol2[i]=i+1; } pol1[ile_cyfr*2]=-2; pol1[ile_cyfr*2+1]=-2; pol2[ile_cyfr*2+1]=-2; //cout<<endl; cout<<ile_cyfr*2+2<<endl; for(int i=0;i<=ile_cyfr*2+2-1;i++) { cout<<pol1[i]+1<<" "<<pol2[i]+1<<" "<<endl; } //cout<<endl; } |