308
Cerinţa
Se citește un număr natural nenul n
. Să se afişeze, în ordine lexicografică, toate submulțimile nevide ale mulţimii {1,2,..,n}
.
Date de intrare
Fişierul de intrare submultimi.in
conţine pe prima linie numărul n
.
Date de ieşire
Fişierul de ieşire submultimi.out
va conţine pe fiecare linie câte o submulțime, elementele unei submulțimi fiind separate printr-un spațiu.
Restricţii şi precizări
1 ≤ n ≤ 10
Exemplu
submultimi.in
4
submultimi.out
1 1 2 1 2 3 1 2 3 4 1 2 4 1 3 1 3 4 1 4 2 2 3 2 3 4 2 4 3 3 4 4
#include <bits/stdc++.h> using namespace std; ifstream cin("submultimi.in"); ofstream cout("submultimi.out"); int x[10] , n; void afisare(int k) { for(int i = 1 ; i <= k ; ++i) cout << x[i] << ' '; cout << '\n'; } void back(int k) { for(int i = x[k - 1] + 1 ; i <= n ; ++i) { x[k] = i; afisare(k); back(k + 1); } } int main() { cin >> n; back(1); return 0; }
Comentarii