Cod sursa(job #1589973)

Utilizator CipiNisNisioi Ciprian CipiNis Data 4 februarie 2016 16:44:57
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>
#define usi unsigned short int
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
usi n,v[10];
void afisare(usi k)
{
    usi i;
    for(i=1;i<=k;++i)
        g<<v[i]<<" ";
    g<<"\n";
}
bool solutie(usi k)
{
    if(k==n) return 1;
    return 0;
}
bool valid(usi k)
{
    usi i;
    for(i=1;i<=k-1;++i)
        if(v[i]==v[k]) return 0;
    return 1;
}
void BK(usi k)
{
    usi i;
    for(i=1;i<=n;++i){
        v[k]=i;
        if(valid(k)){
            if(solutie(k)) afisare(k);
            else BK(k+1);
        }
    }
}
int main()
{
    f>>n;
    BK(1);
    return 0;
}