Cod sursa(job #1000682)

Utilizator alexx.cosmaCosma Cristian Alexandru alexx.cosma Data 23 septembrie 2013 16:21:37
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>

using namespace std;

void back(int k);
int n;
int x[20];
ifstream fin("permutari.in");
ofstream fout("permutari.out");

int main()
{
    fin >> n;

    back(0);
    return 0;
}

bool cond(int k){
    bool alreadyThere=true;
    for(int i=0;i<k;i++){
        if(x[i] == x[k])
            alreadyThere=false;
    }
    return alreadyThere;
}

void back(int k)
{
    if(k==n)
    {
        for(int i=0; i<n; i++)
        {
            fout << x[i] << " ";
        }
        fout << '\n';
    }
    else
    {
        for(int i=1; i<=n; i++)
        {
            x[k]=i;
            if(cond(k))
            back(k+1);
        }
    }
}