Cod sursa(job #793232)

Utilizator Sm3USmeu Rares Sm3U Data 2 octombrie 2012 12:57:55
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include <cstdio>

using namespace std;

int N;
int permutation[10];
bool usedNumber[10];

void Read(){
    freopen ("permutari.in", "r", stdin);
    scanf ("%d", &N);
}

void Print(){
    for (int i = 0; i < N; ++ i){
        printf ("%d ", permutation[i]);
    }
    printf ("\n");
}

void Solve (int currentPosition){
    if (currentPosition == N){
        Print();
        return;
    }
    for (int number = 1; number <= N; ++ number){
        if (usedNumber[number] == false){
            usedNumber[number] = true;
            permutation[currentPosition] = number;
            Solve (currentPosition + 1);
            usedNumber[number] = false;
        }
    }
}

int main()
{
    freopen ("permutari.out", "w", stdout);
    Read();
    Solve(0);

    return 0;
}