Cod sursa(job #218706)
| Utilizator | Data | 3 noiembrie 2008 10:05:29 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
# include <fstream.h>
# include <math.h>
int n,a[100];
int valid (int k)
{ int i;
for (i=1;i<k;i++)
if ((a[i]==a[k]))
return 0;
return 1;
}
void bkt (int k)
{
int i;
if (k==n+1) for (i=1;i<=n;i++)
out<<a[i]<<" ";
else for (i=1;i<=n;i++)
{ a[k]=i;
if (valid (k)) bkt (k+1);
}out<<endl;
}
int main()
{
ifstream in ("permutari.in");
ofstream out ("permutari.out");
in>>n;
bkt(1);
return 0;
}