Cod sursa(job #369913)
Utilizator | Amza Catalin Goten | Data | 29 noiembrie 2009 19:06:36 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include<fstream.h>
int x[10],u,k,i,n,ok;
int main()
{
ifstream f("permutari.in");
ofstream g("permutari.out");
f>>n;
k=1;
while(k>0)
{
x[k]++;
ok=0;
while(!ok)
{
ok=1;
for(i=1;i<k;i++)if(x[i]==x[k])ok=0;
if(!ok)x[k]++;
if(x[k]>n)break;
}
if(x[k]>n)k--;
else if(k==n)
{
for(i=1;i<=n;i++)g<<x[i]<<' ';
g<<'\n';
u=n;
k--;
}
else
{
k++;
x[k]=0;
}
}
return 0;
}