Pagini recente » Cod sursa (job #1336263) | Cod sursa (job #704784) | Cod sursa (job #2073340) | Cod sursa (job #1337568) | Cod sursa (job #1956053)
#include <iostream>
#include <fstream>
using namespace std;
int n,st[10],i;
void init(int k)
{
st[k]=0;
}
int succesor(int k)
{
if(st[k]<n)
{
st[k]++;
return 1;
}
else
return 0;
}
int valid(int k)
{
for(i=1; i<k; i++)
if(st[i]==st[k])
return 0;
return 1;
}
int solutie(int k)
{
return k==n;
}
void tipar(int k)
{
for(i=1; i<=k; i++)
printf("%d ", st[i]);
printf("\n");
}
void bt(int k)
{
init(k);
while(succesor(k))
if(valid(k))
{if(solutie(k))
tipar(k);
else
bt(k+1);}
}
int main()
{freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d", &n);
bt(1);
return 0;
}