Cod sursa(job #144759)
Utilizator | Alexandru Vlad p1ccolino | Data | 27 februarie 2008 22:15:43 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include<fstream.h>
short int n,v[9];
ofstream g("permutari.out");
void scrie()
{int i;
for(i=1;i<n+1;i++)
g<<v[i]<<" ";
g<<"\n";
}
int verif(int k)
{int i;
for(i=1;i<k;i++) if(v[i]==v[k]) return 0;
return 1;
}
void back(int k)
{int i;
for(i=1;i<n+1;i++)
{v[k]=i;if(verif(k)) if(k==n) scrie();
else back(k+1);}
}
int main()
{ifstream f("permutari.in");
f>>n;f.close();
back(1);
g.close();
return 0;}