Cod sursa(job #1729992)

Utilizator xSliveSergiu xSlive Data 15 iulie 2016 23:51:51
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>
#define NMAX 10;
using namespace std;
int n,v[8];
ifstream f("permutari.in");
ofstream g("permutari.out");
bool first=true;
bool valid(int k){
    for(int i=1;i<k;i++)
        if(v[i]==v[k])
            return false;
    return true;
}

void afisare(int k){
    if(!first)  g << "\n";
    for(int i=1;i<=k;i++)
        g << v[i] << " ";
    if(first)   first=false;

}

void bk(int k){
    for(int i=1;i<=n;i++){
        v[k]=i;
        if(!valid(k))   continue;
        if(k==n)
            afisare(n);
        else bk(k+1);
    }
}

int main()
{
    f >> n;
    bk(1);
    return 0;
}