Cod sursa(job #264059)

Utilizator flowreenNutiu Florin flowreen Data 21 februarie 2009 12:07:49
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include<stdio.h>
#include<conio.h>

int sol[20],k,n;
void tipar(int k)
{for(int i=1;i<k;++i)
printf("%i ",sol[i]);
printf("\n");
}

int ok(int k,int val)
{for(int i=1;i<k;i++)
if(sol[i]==val)return 0;
return 1;
}

void back(int k)
{if(k==n+1)tipar(k);
else
for(int val=1;val<=n;++val)
{if(ok(k,val)){sol[k]=val;
back(k+1);
}
}
}
int main()
{freopen ("permutari.in","r",stdin);
freopen ("permutari.out","w",stdout);
fscanf(stdin,"%i",&n);
back(1);
fclose(stdout);
getch();
return 0;
}