Cod sursa(job #1999160)

Utilizator VarticeanNicolae Varticean Varticean Data 10 iulie 2017 14:50:56
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
short a[10],n;
void print()
{
    for(int i=1; i<=n; i++ )
        out<<a[i]<<' ';
    out<<'\n';
}
int valid(int k)
{
    for(int i=1; i<k; i++ )
        if(a[i]==a[k]) return 0;
    return 1;
}
void backtrack()
{
   int  k=1; a[1]=0;
    while(k)
    {
        while(a[k]<=n)
        {
            a[k]++;
            if(valid(k)) if(k==n) print();
            else
            {
                k++; a[k]=0;
            }
        }
        k--;
    }
}
int main()
{
   in>>n;
   backtrack();
    return 0;
}