Cod sursa(job #659582)

Utilizator visanrVisan Radu visanr Data 10 ianuarie 2012 19:22:52
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.97 kb
#include <stdio.h>
#include <stdlib.h>
#include <math.h>


int v[100],n,pus[100];


void afisare()
{
     int i;
     for(i=0;i<n;i++)
     {
                     printf("%i ", v[i]);
     }
     printf("\n");
}


void back(int k)
{
     int i;
     for(i=1;i<=n;i++)
     {
             if(!pus[i])
             {
                    v[k]=i;
                    pus[i]=1;
                    if(k==n-1)
                    {
                            afisare();
                    }else
                    {
                         back(k+1);
                    }
                    pus[i]=0;
             }       
     }
}

int main()
{
    freopen("permutari.in","r",stdin);
    freopen("permutari.out","w",stdout);
    int i;
    scanf("%i", &n);
    for(i=0;i<n;i++)
    {
                    v[i]=0;
    }
    for(i=0;i<100;i++)
    {
                    pus[i]=0;
    }
    back(0);
    scanf("%i", &i);
    return 0;
}