Cod sursa(job #155980)

Utilizator victorgigeaGigea Victor victorgigea Data 12 martie 2008 11:59:16
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <stdio.h>
#define FIN "permutari.in"
#define FOUT "permutari.out"
int s[10],n;

void print()
{
 int i;
 for(i=1;i<=n;i++)
   printf("%d ",s[i]);
 printf("\n");

}

int valid(int p)
{
 int i;
 for(i=1;i<p;i++)
   if(s[i]==s[p]) return 0;

 return 1;
}

void back(int p)
{int i;
 for(i=1;i<=n;i++)
  {
   s[p]=i;
   if (valid(p)==1) if(p==n) print();
		    else back(p+1);
  }
}

int main()
{
 freopen(FIN,"rt",stdin);
 freopen(FOUT,"wt",stdout);

 scanf("%d",&n);
 back(1);

 return 0;
}