Cod sursa(job #1171682)

Utilizator suciueusSuciu Eusebiu suciueus Data 16 aprilie 2014 03:03:52
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#include <iostream>
#include <fstream>
#include <stdio.h>

using namespace std;

int sol[100];  int n;

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


int succesor(int k){
if(sol[k]<n){
        sol[k]++;
    return 1;
}
else{
    return 0;
}

}

int valid(int k){
int ev=1;
for(int i=1;i<k;i++){
    if(sol[k]==sol[i]) ev=0;
}
return ev;
}

int tipar(){
     //FILE * pFile;
// pFile = fopen ("permutari.out","w");


for(int i=1;i<=n;i++){
fout <<sol[i]<< " ";
  // fprintf (pFile, "%d ",sol[i]);
}
 fout << '\n';
}


int back(int k){
if(k==n+1){
    tipar();
}
else{
   sol[k]=0;
    while(succesor(k)){
        if(valid(k)) back(k+1);
    }

}

}


int main()
{



    fin>> n;

    back(1);

    return 0;
}