Pagini recente » Cod sursa (job #506889) | Cod sursa (job #2676354) | Cod sursa (job #1516133) | Cod sursa (job #2848470) | Cod sursa (job #2159208)
#include <cstdio>
using namespace std;
int n,sol[10];
void init(int k)
{
sol[k]=0;
}
int succesor(int k)
{
if(sol[k]<n)
{
sol[k]++;
return 1;
}
else return 0;
}
int valid(int k)
{
for(int i=1; i<k; i++)
if(sol[k]==sol[i]) return 0;
return 1;
}
void backtracking(int k)
{
if(k==n+1)
{
for(int i=1; i<=n; i++)
{
printf("%d ", sol[i]);
}
printf("\n");
}
else
{
for(int i=1; i<=n; i++)
{
sol[k]=i;
if(valid(k))
backtracking(k+1);
}
}
}
int main()
{
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
scanf("%d ", &n);
backtracking(1);
return 0;
}