Cod sursa(job #3355223)

Utilizator darius1702Darius Epure darius1702 Data 22 mai 2026 09:00:44
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.91 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
void backtrack(int n,vector<bool>& used,vector<vector<int>>& result,vector<int>& current){
    if(current.size()==n){
        result.push_back(current);
        return;
    }
    for(int i=1;i<=n;i++){
        if(!used[i]){
            used[i]=true;
            current.push_back(i);
            backtrack(n,used,result,current);
            used[i]=false;
            current.pop_back();
        }
    }
}
void permutations(int n){
    vector<vector<int>> result;
    vector<int> current;
    vector<bool> used(n,false);
    backtrack(n,used,result,current);
    for(int i=0;i<result.size();i++){
        for(int j=0;j<result[i].size();j++)
            fout<<result[i][j]<<" ";
        fout<<endl;
    }
}
int main(){
    int n;
    fin>>n;
    permutations(n);
    return 0;
}