Cod sursa(job #1645768)

Utilizator VladTiberiuMihailescu Vlad Tiberiu VladTiberiu Data 10 martie 2016 13:40:54
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <cstdio>
#include <vector>
#include <queue>
#include <set>
#include <stack>
#include <algorithm>
#include <cmath>
#include <cstring>
#include <iomanip>

#define NMax 10
#define INF 0x3f3f3f3f
using namespace std;
int n,ANS;
int st[NMax],fol[NMax];

void afisare(){
    for(int i = 1; i <= n; ++i){
        printf("%d ",st[i]);
    }
    printf("\n");
}
void back(int k){
    for(int i = 1; i <= n; ++i){
        if(fol[i] == 0){
            fol[i] = 1;
            st[k] = i;
            if(k == n)
                afisare();
            else
                back(k + 1);
            fol[i] = 0;
        }
    }
}
int main()
{
    freopen("permutari.in","r",stdin);
    freopen("permutari.out","w",stdout);
    scanf("%d",&n);
    back(1);
    return 0;
}