Cod sursa(job #1551100)

Utilizator CraiuAndrei Craiu Craiu Data 15 decembrie 2015 09:33:04
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("permutari.in");
ofstream fout("permutari.out");

int st[20], n;

void Afisare()
{
    for(int i = 1; i <= n; i++)
        fout << st[i] << " ";
    fout <<"\n";
}

inline bool Valid(int top, int i)
{
    int j;
    for(j = 1; j < top; j++)
        if(st[j] == i) return false;
    return true;
}

inline void Back(int top)
{
    int i;
    if(top == n + 1) Afisare();
    else for(i = 1; i <= n; i++)
        if(Valid(top, i))
        {
            st[top] = i;
            Back(top + 1);
        }
}

int main()
{
    fin >> n;
    fin.close();
    Back(1);
    fout.close();
    return 0;
}