Cod sursa(job #269909)

Utilizator allynaAlina S allyna Data 3 martie 2009 16:15:21
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.9 kb
#include<iostream.h>

int n,sol[100];

ifstream in("permutari.in");
ofstream out("permutari.out");

void afisare()
{
     int i;
     for(i=1;i<=n;i++)
                      out<<sol[i]<<" ";
     cout<<endl;
}

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

void back(int k)
{
     int i;
     if(k==n+1)
             afisare();
             else
             {
              for(i=1;i<=n;i++)
                      {
                      sol[k]=i;
                      if(verific(k)==1)
                                       back(k+1);
                                       }
              }
}

int main()
{
    in>>n;
    in.close();
    back(1);
    out.close();
    system("pause");
    return 0;
}