Cod sursa(job #1112746)

Utilizator TheStifmeisterRusu Alex TheStifmeister Data 19 februarie 2014 23:17:34
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <iostream>
#include <fstream>

using namespace std;
ofstream g("permutari.out");
long long n,v[50];



int valid( int k);
int solve( int k);
void print(int k );
void bk( int k);



int main()
{
    ifstream f("permutari.in");

    f>>n;
    bk(1);
    return 0;
}

void bk(int k)
{
    int i;
    for(i=1;i<=n;i++)
    {
        v[k]=i;
        if (valid(k))
        {
            if (solve(k))

                print(k);
                else
                bk(k+1);

        }
     }
}

int valid(int k)
{
    int i;
    for(i=1;i<=k-1;i++)
    if (v[i]==v[k])
        return 0;
    return 1;

}

int solve(int k)
{
    if (k==n)
        return 1;
    return 0;

}



void print(int k)
{
    int i;
    for(i=1;i<=k;i++)
        g<<v[i]<<" ";
    g<<endl;
}