Pagini recente » Cod sursa (job #1674911) | Cod sursa (job #1744626) | Cod sursa (job #7378) | Cod sursa (job #780268)
Cod sursa(job #780268)
using namespace std;
#include<stdio.h>
#include<algorithm>
int st[10],a[10],n;
void initializari()
{
int i;
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
a[i]=i;
}
void afisare(int p)
{
int j;
for(j=1;j<=p;j++)
printf("%d ",st[j]);
printf("\n");
}
int valid(int p)
{
int i,ok;
ok=1;
for(i=1;i<=p-1;i++)
if(st[p]==st[i])ok=0;
return ok;
}
void backtracking(int p)
{
int pval;
for(pval=1;pval<=n;pval++)
{
st[p]=a[pval];
if(valid(p))
if(p==n)afisare(p);
else backtracking(p+1);
}
}
int main()
{
initializari();
backtracking(1);
}