Pagini recente » Profil vladii | Monitorul de evaluare | cameleoni | Diferente pentru preoni-2008/clasament/runda-1/10 intre reviziile 1 si 4 | Cod sursa (job #804577)
Cod sursa(job #804577)
#include<cstdio>
#define NMAX 10
using namespace std;
short x[10];
inline int cond(short k)
{
for(int i = 1; i < k; ++i)
if(x[i] == x[k]) return 0;
return 1;
}
inline void afis(int k)
{
for(int i = 1; i <= k; ++i) printf("%d ", x[i]);
printf("\n");
}
void back(int n)
{
short k = 1;
x[k] = 0;
do
{
while(k < n + 1 && x[k] < n)
{
x[k]++;
if(cond(k))
{
if(k == n) afis(k);
else
{
++k;
x[k] = 0;
}
}
}
--k;
}
while(k);
}
int main()
{
short n;
freopen("premutari.in","r", stdin);
freopen("premutari.out","w", stdout);
scanf("%d", &n);
back(n);
return 0;
}