Cod sursa(job #147061)

Utilizator georgepalPal George Catalin georgepal Data 2 martie 2008 15:46:01
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<stdio.h>
int v[20],n;
FILE*f=fopen("permutari.in","r");
FILE*g=fopen("permutari.out","w");
int solutie(int k)
	{
	if(k==n) return 1;
	return 0;}
int valid(int k)
	{
	int i;
	for(i=1;i<=k-1;i++)
		if(v[k]==v[i]) return 0;
	return 1;
	}
void afis(int k)
	{
	for(int i=1;i<=k;i++)
		fprintf(g,"%d ",v[i]);
	fprintf(g,"\n");
	}
void BKT(int k)
	{
	int i;
	for(i=1;i<=n;i++)
		{v[k]=i;
		if(valid(k)) {if(solutie(k)) afis(k);
			      else BKT(k+1);
			      }}}
int main()
	{
	fscanf(f,"%d",&n);
	BKT(1);
	fcloseall();
	return 0;}