Cod sursa(job #170377)

Utilizator CosminStirbuStirbu Cosmin CosminStirbu Data 2 aprilie 2008 18:15:17
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<stdio.h>

int st[9],n;

FILE*f=fopen("permutari.in","r");
FILE*g=fopen("permutari.out","w");

void afis ()
 { int i;
   for (i=1;i<=n;i++) fprintf(g,"%d ",st[i]);
   fprintf(g,"\n");
   }

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

void BKT (int p)
  { int i;
    for (i=1;i<=n;i++)
      { st[p]=i;
	if (valid(p))
	   if (p==n) afis();
	     else BKT(p+1);
	}

    }

int main ()
 { fscanf(f,"%d",&n);
   BKT(1);
   fcloseall();
   return 0;}