Cod sursa(job #158193)
Utilizator | Jurba Andrei znakeu | Data | 13 martie 2008 15:13:02 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.51 kb |
#include <stdio.h>
#define MAXN 10
char v[MAXN];
int V[MAXN],n;
void wtf(int p)
{
int i;
if (p==n)
{
for (i=0; i<n-1; i++)
printf("%d ",V[i]);
printf("%d\n",V[n-1]);
}
else
{
for (i=1; i<=n; i++)
if (!v[i])
{
v[i]=1;
V[p]=i;
wtf(p+1);
V[p]=0;
v[i]=0;
}
}
}
int main()
{
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
wtf(0);
fclose(stdin);
fclose(stdout);
return 0;
}