Pagini recente » Cod sursa (job #1555894) | Cod sursa (job #15644) | Cod sursa (job #3032126) | Cod sursa (job #810907) | Cod sursa (job #162070)
Cod sursa(job #162070)
#include<stdio.h>
int n,sol[10];
bool marcat[10];
/*int valid(int k){//verifica daca sol[k] e compatibil cu el care sunt deja in sol
for (int i=1; i<k; i++)
if (sol[i]!=sol[k])
return 0;
return 1;
} */
void scrie(){
for (int i=1; i<n; i++)
printf("%d",sol[i]);
printf("%d\n",sol[n]);
}
void back(int k){
//completeaza sol [k]
if (k==n+1){
//prelucrarea unei solutii
scrie();
return;
}
//aleg un element pentru sol[k]
for (int i=1; i<=n; i++){
/*sol[k]=i;
if(valid(k))
back(k+1);*/
if (!marcat[i])
{
marcat[i]=true;
sol[k]=i;
back(k+1);
marcat[i]=false;
}
}
}
int main()
{
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
back(1);
return 0;
}