Cod sursa(job #1146439)
Utilizator | Savulescu Stefan savulescustefan | Data | 18 martie 2014 23:04:56 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.65 kb |
#include <cstdio>
using namespace std;
int sol[12],n,k,i;
char a[12];
void afisare ()
{
int i;
for (i=1;i<=n-1;i++)
printf ("%d ", sol[i]);
printf ("%d\n", sol[n]);
}
void back(int k)
{
int i;
if (k>n)
afisare ();
else
{
for (i=1;i<=n;i++)
{
if (a[i]==false)
{
sol[k]=i;
a[i]=true;
back (k+1);
a[i]=false;
}
}
}
}
int main()
{
freopen ("permutari.in","r",stdin);
freopen ("permutari.out","w",stdout);
scanf ("%d", &n);
back (1);
return 0;
}