Cod sursa(job #1007755)

Utilizator chimistuFMI Stirb Andrei chimistu Data 9 octombrie 2013 17:56:33
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#include <iostream>
#include <fstream>
#define maxn 17

using namespace std;

ifstream f("permutari.in");
ofstream g("permutari.out");

int a[maxn],k,n;

bool valid(int q)
{
    for (int i=1;i<=q-1;i++)
    {
        if (a[q] == a[i])
            return false;
    }
    return true;
}

void afisare()
{
    for (int i=1;i<=k;i++)
        g << a[i] << " ";
    g << endl;
}

void back(int q)
{
    for(int i=1;i<=k;i++)
    {
        a[q] = i;
        if (valid(q))
        {
            if (q==k)
                afisare();
            else
                back(q+1);
        }
    }
}
int main()
{
    f >> n;
  //  for (int i=1;i<=n;i++)
  //  {
  //      k = i;
        k = n;
        int q = 1;
        back(q);
  //  }
    return 0;
}