Cod sursa(job #1009994)
Utilizator | Data | 14 octombrie 2013 09:13:49 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.64 kb |
# include <cstdio>
# define MAXN 10
using namespace std;
int i,k,n;
bool ok[MAXN]={false};
int sol[MAXN];
void afis()
{
int i;
for(i=1; i<=n; ++i)
printf("%d ", sol[i]);
printf("\n");
return;
}
void back(int k)
{
int i;
if(k>n) afis();
else
for(i=1; i<=n; ++i)
if(!ok[i])
{
sol[k]=i;
ok[i]=true;
back(k+1);
ok[i]=false;
}
}
int main()
{
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d\n", &n);
back(1);
return 0;
}