Pagini recente » Cod sursa (job #214927) | Cod sursa (job #2001849) | Cod sursa (job #1581744) | Cod sursa (job #696550) | Cod sursa (job #1296995)
#include <stdio.h>
void afisare(int n, int p[])
{
if (n == 0)
return;
for(int i=1;i <=n; i++)
printf("%d ", p[i]);
printf("\n");
}
void back(int i, int n, int p[]) {
afisare(i - 1, p);
if (i == n+1)
return;
for (int a = 1; a <= n; a++) {
bool valid = true;
for (int j = 1; j <= i - 1; j++)
if (p[j] == a)
valid = false;
if (valid == true) {
p[i] = a;
back(i + 1, n, p);
}
}
}
int main()
{
freopen("submultimi.in", "r", stdin);
freopen("submultimi.out", "w", stdout);
int n, p[10];
scanf("%d", &n);
back(1, n, p);
return 0;
}