Cod sursa(job #715264)

Utilizator XladhenianGrigorita Vlad-Stefan Xladhenian Data 16 martie 2012 22:21:36
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
                                                     
#include <fstream>
using namespace std;

long M[10] = {0};
fstream fout;

int OK(long pos)
{
 long t[10] = {0};
 long i;
 for (i = 1;i <= pos;i += 1)
  {
   if (t[M[i]] == 1)
     {
      return 0;
     }
   t[M[i]] = 1;
  }
 return 1;
}

void bkt(long n,long pos)
{
 long i;
 if (pos > n)
   {
    for (i = 1;i <= n;i += 1)
     {
      fout << M[i] << " ";
     }
    fout << "\n";
   }
 for (i = 1;i <= n;i += 1)
  {
   M[pos] = i;
   if (OK(pos))
     {
      bkt(n,pos + 1);
     }
  }
}

int main(void)
{
 fstream fin("permutari.in",ios::in);
 fout.open("permutari.out",ios::out);
 long N;
 fin >> N;
 bkt(N,1);
 fin.close();
 fout.close();
 return 0;
}