Pagini recente » Cod sursa (job #1671449) | Cod sursa (job #2392241) | Cod sursa (job #2811482) | Cod sursa (job #3178934) | Cod sursa (job #162066)
Cod sursa(job #162066)
#include<stdio.h>
int n,sol[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);
}
}
int main()
{
freopen("permutari.in","r",stdin);
freopen("permutari.out","w",stdout);
scanf("%d",&n);
back(1);
return 0;
}