Cod sursa(job #771699)
Utilizator | Data | 26 iulie 2012 20:44:19 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <cstdio>
using namespace std;
int lg,sir[1000],ok[1000];
void permutare (int x) {
int i;
if (x>lg)
{
for (i=1; i<=lg; i++) printf("%d ", sir[i]);
printf("\n");
}
else
{
for (i=1; i<=lg; i++) if(!ok[i])
{
sir[x]=i;
ok[i]=1;
permutare(x+1);
ok[i]=0;
}
}
}
int main () {
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d", &lg);
permutare(1);
fclose(stdin); fclose(stdout);
return 0;
}