Cod sursa(job #1680492)

Utilizator Marian25Stanciulica Marian Marian25 Data 8 aprilie 2016 20:12:19
Problema Generare de permutari Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.75 kb
#include <stdio.h>

void perm(int poz, int n, int sol[]){
    int i, j, ok, k;
    if(n == poz){
       for(i = 1; i <= n; i++){
            printf("%d ", sol[i]);
       }
       printf("\n");
    }
    for(i = 1; i <= n; i++){
        ok = 1;
        for(j = 1; j <= poz; j++){
            if(sol[j] == i){
                ok = 0;
                break;
            }
        }
        if(ok){
            sol[poz+1] = i;
            perm(poz+1, n, sol);
        }
    }
}

int main()
{
    freopen("permutari.in", "r", stdin);
    freopen("permutari.out", "w", stdout);
    int n;

    scanf("%d", &n);

    int i;
    int vec[n];
    for(i = 1; i <= n; i++){
        vec[i] = 0;
    }

    perm(0, n, vec);

    return 0;
}