Pagini recente » Cod sursa (job #236265) | Cod sursa (job #1785997) | Cod sursa (job #11644) | Cod sursa (job #1883771) | Cod sursa (job #154783)
Cod sursa(job #154783)
#include <cstdio>
#include <cstring>
int n, st[20], v[20];
char buffer[10000000];
int bufferi = 0;
#define p n
void back(int k)
{
int f = 1;
if(k < n)
{
for(int i = 1; i <= p; i++)
{
st[k] = i;
back(k+1);
}
}
else
{
memset(v, 0, sizeof(v));
for(int i = 0; i < n; i++)
{
v[st[i]]++;
if(v[st[i]] > 1)
f = 0, i = 666;
}
if(f)
{
for(int i = 0; i < n; i++)
{
// printf("%d ", st[i]);
buffer[bufferi++] = st[i]+'0';
buffer[bufferi++] = ' ';
}
buffer[bufferi++] = '\n';
}
}
}
int main()
{
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d", &n);
back(0);
buffer[bufferi] = '\0';
printf("%s", buffer);
return 0;
}