Cod sursa(job #1478504)

Utilizator tudorgalatanRoman Tudor tudorgalatan Data 28 august 2015 19:34:53
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 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]++;
            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++)
                out << x[i] << " ";
            out << "\n";
            i = n;
        }
    } while (i > 0);
    return 0;
}