Cod sursa(job #1419545)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 15 aprilie 2015 21:55:06
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>

using namespace std;

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

int a[9], i, j, n;

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

int main()
{
    f >> n;
    i = 1;
    do
    {
        do
        {
            a[i]++;
            if (a[i] > n)
                a[i] = 0, i--;
            else if (valid(i))
                i++;
        }while (i <= n && i > 0);
        if (i == n+1)
        {
            int j;
            for (j = 1; j <= n; j++)
                g << a[j] << " ";
            g << "\n";
            i = n;
        }
    }while (i > 0);
    return 0;
}