Cod sursa(job #1478503)

Utilizator tudorgalatanRoman Tudor tudorgalatan Data 28 august 2015 19:33:59
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
// Galatan Tudor - Ion Luca Theoretical High School
// Husi, Romania, Th, August 28, 2015

#include<fstream>
 
using namespace std;
 
ifstream in("permutari.in");
ofstream out("permutari.out");
 
int x[9];
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 ()
{
    in >> n;
    for (i=1; i<=n; i++)
        x[i] = 0;
    i = 1;
    do
    {
        do
        {
            x[i]++;
            x[i] > n ? x[i] = 0, i--; : if (valid (i)) i++;
        } while (i<=n && i>0);
        if (i > n)
        {
            for (i=1; i<=n; i++)
                out << x[i] << " ";
            out << "\n";
            i = n;
        }
    } while (i > 0);
    return 0;
}