Cod sursa(job #1801202)

Utilizator saba_alexSabadus Alex saba_alex Data 8 noiembrie 2016 19:19:55
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <iostream>
#include  <fstream>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int n, per[20];

bool valid(int val, int k)
{    for(int i=1;i<=k-1;i++)
        if(per[i]==val)
            return 0;
    return 1;
}
void afisare()
{    for(int i=1;i<=n;i++)
        g<<per[i]<<' ';
    g<<'\n';
}
void back(int k)
{   if(k==n+1)
    {   afisare();
        return;
    }
    for(int i=1;i<=n;i++)//incercam toate valorile posibile, !sa nu declar i global
        if(valid(i,k)) //returneaza 1 daca putem sa punem elemntul i pe nivelul k
        {   per[k]=i;
            back(k+1);
        }
}

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