Cod sursa(job #358888)

Utilizator idomiralinIdomir Alin idomiralin Data 24 octombrie 2009 21:06:54
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
   
#include<math.h>
#include<stdlib.h>
#include<stdio.h>

int sol[10],n;

int valid(int k)

{
    for (int i=1;i<k;i++)

if (sol[k]==sol[i])      

   return 0;
return 1;}

void back(int k)
{if (k==n+1)
    {for (int i=1;i<=n;i++)
    printf("%d ",sol[i]);
    printf("\n");}
    else {
         sol[k]=0;
    
    while (sol[k]<n)
    
          {sol[k]++;
         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;
         }