Cod sursa(job #353817)

Utilizator probaproba proba proba Data 6 octombrie 2009 12:58:05
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<stdio.h>
int ut[20],st[20],n;
int valid(int k)
{
   for(int i=1;i<k;i++)
     if(st[i]==st[k])
        return 0;
   return 1;
}
void back(int k)
{
   int p;
   for(p=1;p<=n;p++)
   {
      st[k]=p;
      if(valid(k))
      {
	  if(k==n)
	  {
	     for(int i=1;i<=n;i++)
		printf("%d ",st[i]);
	     printf("\n");
	  }
	  else
	     back(k+1);
      }
   }
}
int main()
{
   freopen("permutari.in","r",stdin);
   freopen("permutari.out","w",stdout);
   scanf("%d",&n);
   back(1);
   return 0;
}