Cod sursa(job #3355120)

Utilizator actonceaAndreea Catalina actoncea Data 21 mai 2026 19:51:45
Problema Submultimi Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.97 kb
#include<iostream>
#include <fstream>
#include <vector>


using namespace std;

ifstream f ("submultimi.in");
ofstream g ("submultimi.out");

void back(vector<int>& v, vector<int>& result, vector<bool>& vizitat, int pos){
    if (result.size() != 0 && result.size()  <= v.size()) {
        for (int i = 0; i < result.size(); i++)
            g << result[i] <<" ";
        g << '\n';
    }
    if (result.size() == v.size())
        return;

    for (int i = pos; i < v.size(); i++) {
        if (vizitat[v[i]] == false) {
            vizitat[v[i]] = true;
            result.push_back(v[i]);
            back(v, result, vizitat, i);
            result.pop_back();
            vizitat[v[i]] = false;
        }
    }

}

int main() {

    int n, k;
    f >> n;
    vector<int> v; 
    vector<int> result;
    for (int i = 1; i <= n ;i++)
        v.push_back(i);
    vector<bool> vizitat(n+1, false);
    back(v, result, vizitat, 0);

    return 0;
}