Cod sursa(job #617018)
| Utilizator | Data | 13 octombrie 2011 20:21:30 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 20 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include<stdio.h>
int x[100], n;
int bun(int k)
{
for(int i=1;i<=k; i++)
if(x[i]==x[k])
return 0;
return 1;
}
int main()
{
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d", &n);
int i=1;
while(i>0&& i<=n)
{
//printf("%d ", n);
x[i]++;
if(x[i]>n)
{
x[i]=0;
i--;
}
else
if(bun(i))
i++;
if(i>=n)
{
for(int j=1;j<=n;j++)
printf("%d ", x[j]);
i=n;
}
}
return 0;
}
