Cod sursa(job #162194)

Utilizator c_e_manuEmanuel Cinca c_e_manu Data 19 martie 2008 17:51:37
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<stdio.h>

int n, st[10];
int ok(int k);
int back(int k);
int write();
int main()
{       freopen("permutari.in","r",stdin);
	freopen("permutari.out","w",stdout);
	scanf("%d",&n);
	back(0);
        return 0;
}
int write()
{       int i;
	for(i=0;i<n;i++)
		printf("%d ",st[i]);
        printf("\n");
	return 0;
}
int ok(int k)
{       int i;
	for(i=0;i<k;i++)
		if(st[i]==st[k])
			return 0;
	return 1;
}
int back(int k)
{       int i;
	if(k==n-1)
		write();
	else
		for(i=1;i<=n;i++)
		{	st[k]=i;
			if(ok(k))
				back(k+1);
		}
	return 0;
}