Cod sursa(job #1509790)

Utilizator AlexandruRudiAlexandru Rudi AlexandruRudi Data 24 octombrie 2015 12:22:54
Problema Generare de permutari Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream>
#include <fstream>

using namespace std;

int n,a[10];

void print();

bool val(int k){
    bool cor=true;
    for(int i=1;i<k;i++) if(a[i]==a[k]) cor=false;
    return cor;
}

void gen(int k){
    if(k>n) print();
    for(int i=1;i<=n;i++){
        a[k]=i;
        if(val(k)){
            gen(k+1);
        }
    }
}

int main()
{
    ifstream in("permutari.in");
    in >> n;
    gen(1);
    return 0;
}

void print(){
    ofstream out("permutari.out");
    for(int i=1;i<=n;i++) out << a[i] << ' ';
    out << '\n';
}