Cod sursa(job #488015)
Utilizator | Radu Bumbacea Radu_Bumbacea | Data | 27 septembrie 2010 13:14:02 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<stdio.h>
int sol[10];
int n;
int corect(int q,int p)
{
int z=1;
for(int i=1;i<=p;i++)
if (q==sol[i]) z=0;
return z;
}
void bkt(int p)
{
if (p==n+1)
{
for(int j=1;j<=n;j++)
printf("%d ",sol[j]);
printf("\n");
return;
}
for(int i=1;i<=n;i++)
{
if (corect(i,p-1))
{
sol[p]=i;
bkt(p+1);
}
}
}
int main()
{
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
bkt(1);
}