272
Cerința
Se dă un număr natural n
. Să se genereze, în ordine lexicografică, toate șirurile de cifre binare de lungime n
.
Date de intrare
Programul citește de la tastatură numărul n
Date de ieșire
Programul va afișa pe ecran șirurile generate, câte unul pe o linie; între elementele unui șir nu sunt spații.
Restricții și precizări
1 ≤ n ≤ 10
Exemplu
Intrare
3
Ieșire
000 001 010 011 100 101 110 111
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; for(int i = 0 ; i <= 1 ; ++i) { if(n==1) cout << i << endl; else for(int j = 0 ; j <= 1 ; j++) { if(n==2) cout << i << j << endl; else for(int r = 0 ; r <= 1 ; ++r) { if(n==3) cout << i << j << r <<endl; else for(int p = 0 ; p <= 1 ; ++p) { if(n==4) cout << i << j << r << p << endl; else for(int k = 0 ; k <= 1 ; ++k) { if(n==5) cout << i << j << r << p << k << endl; else for(int q = 0 ; q <= 1 ; ++q) { if(n==6) cout << i << j << r << p << k << q << endl; else for(int s = 0 ; s <= 1 ; ++s) { if(n==7) cout << i << j << r << p << k << q << s << endl; else for(int t = 0 ; t <= 1 ; ++t) { if(n==8) cout << i << j << r << p << k << q << s << t << endl; else for(int u = 0 ; u <= 1 ; ++u) { if(n==9) cout << i << j << r << p << k << q << s << t << u << endl; else for(int v = 0 ; v <= 1 ; ++v) cout << i << j << r << p << k << q << s << t << u << v << endl; } } } } } } } } } }
Comentarii