Cod sursa(job #1466862)

Utilizator tudorgalatanRoman Tudor tudorgalatan Data 31 iulie 2015 10:48:33
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include<fstream>

using namespace std;

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

int x[20];
int n, i;

int valid (int k)
{
    int i;
    for (i=1; i<k; i++)
        if (x[i] == x[k])
        return 0;
    return 1;
}

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